Date: Thu, 18 May 2017 17:34:34 +0200 From: David Naylor <naylor.b.david@gmail.com> To: Adam Weinberger <adamw@adamw.org> Cc: Rodrigo Osorio <rodrigo@osorio.me>, Rodrigo Osorio <rodrigo@freebsd.org>, ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: Re: svn commit: r440978 - in head: devel devel/npm-amdefine devel/npm-clean-css devel/npm-clean-css/files devel/npm-commander devel/npm-commander/files devel/npm-graceful-readlink devel/npm-source-map ... Message-ID: <1806880.NXCOkgnAQa@dragon.local> In-Reply-To: <33786079-3935-478C-9F5B-9B46B4483CDB@adamw.org> References: <201705152205.v4FM5kIw055373@repo.freebsd.org> <1917876.5GWQEAK6S8@dragon.local> <33786079-3935-478C-9F5B-9B46B4483CDB@adamw.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2140121.UOGQeabBr1 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" On Wednesday, 17 May 2017 20:53:35 Adam Weinberger wrote: > For these reasons, node modules and Go modules simply are not good > candidates for FreeBSD ports. npm manages node modules in the correct node > way (and pkg doesn't), and so npm is the correct way to install node > modules. I'm sure Go has a similar tool; I'll call it gopher because that > sounds like a good name for a Go installer, and I'm sure that it installs > Go modules the correct way, and so it is the correct way to install Go > modules. > > There are definitely exceptions to this: if a module must be modified in a > specific way to work on FreeBSD, or if a module is a required dependency of > another port, then having those modules in the tree definitely makes sense. Thank you for explaining your reasons, and for the better understanding of the intricacies of node packages (and npm). I think we are still stuck with the problem of needing a way to download the required npm files during the fetch phase (and have those files verified). For nuget we reproduced that logic in USES=mono (which is simply download and extract). There was the possibility to define a custom cache location from which nuget would do the extracting (and leave the downloading to the Ports framework), however I never got it to work. I also think paket not work that way. Also, could you please clarify a point: Lets say I have a node package (say electron) that needs to be modified and compiled to run on FreeBSD. It obviously has it's own node dependencies. Will npm include those dependencies as private or would ports need to be created for them? (My npm knowledge is next to non-existent.) Also, some bike-shedding (dark blue please): In general, I am wary of the "new" way: - Consistency: if every program based on node.js bundled their own version of the library then updates are dependent on the software creator. It is likely to have multiple versions (some with known issues/vulnerabilities) of a "package" to be installed. - Alter-ability: there would no longer be a central place where one can make custom changes to a node package (for whatever reason) and have all users of that package automatically pick it up. These issues, however, are more "meta" in nature and are tangential to the practical issue of software propagation and deployment. Regards --nextPart2140121.UOGQeabBr1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQKTBAABCgB9FiEElI7FEaJ/AwLnmbU6rWP6jday2lUFAlkdvwpfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk0 OEVDNTExQTI3RjAzMDJFNzk5QjUzQUFENjNGQThERDZCMkRBNTUACgkQrWP6jday 2lUbdg/+IKAn4bdJLZgcgre5RNFiJVQzH+ucHT/8kYVpBAuVEbgdtnP4c5yEx98x xqdtfxyFoBqMCxjJ07Y+1FeF65cMtoqPhpaRA9q4FbDWJ3hsC9uGlv7idkM3vJ/n PxITXnsdJ/weYOb2X6ydRfv2B6wkzYYeMXyYEe2oHcOXBHFoIrvY9nNL8gDgOE+E rZhIQebXyF08Kzst4gRJFRC5GJq1EUnfS3r59JIFN4npHVlD9bxFBD9vc12fjKu2 Dj+zMqQn+GmBz+4MY5ZbmCwJBOuZv4t6mbmHjUF74rXh5iQeRsZ6KtTeI82yoiV0 O1BlYKCYL4P/vW2UOY7F2ukGHeifRkp+3UZKzHbGkEinfIugJZikftY6Md+0N3sZ wAMwJMElr9RpMOySeks+UW4Zt5/p73AIGx8v/TMmsWlpDm40OxAdsYa2LEX983rx BFQpPieu30/0PBdZxmJ0JRGGQTgfh+x4Nn9a2Nl5hyOaQfUs3cd6NTEuxAT/jBuf ox1WfR7MjgX8ln/+SUnggG73R2/PrrHcUEXXmjImDq/8LEZfwRTW1dZcP1ysgiV9 dFkpvdf8/q7TIqJk8NyR8aBAafe9Oyj4EedCIcKTBCJBr5M0HZir806jyIiFyXpw RQIZE+XxIX6BQ4qOKgiVZdWJ4LXEQBd2aHe2tcDa3KhdFWdj5sE= =82x0 -----END PGP SIGNATURE----- --nextPart2140121.UOGQeabBr1--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1806880.NXCOkgnAQa>