Re: The "node" command in Debian
On Wed, 09 Feb 2011, John Goerzen wrote: > On 02/08/2011 05:04 PM, Hamish Moffatt wrote: > >Similar AX.25 tools "call" and "listen" were renamed in 2007 to ax* > >(package ax25-apps), because those names were too generic (according to > >the changelog). > > ... resulting in considerable confusion from many people, given that > much documentation out there refers to call and listen. I, for one, > was rather puzzled, especially since there is also an ax25_call > which does something different. > > Not saying it was a bad choice, but just that this was what the > result was. Much existing documentation is confusing to Debian > users. > > Also, it should be stated that /usr/sbin/node is normally started > from ax25d, which is somewhat analogous to inetd. It is not > normally invoked by users (though it could be). Renaming it will > break servers unless users are well aware. Can it be fixed by the package postinst (i.e. update ax25d's config files)? If it is something that is supposed to run through a superserver, it would be much better off in /usr/lib somewhere... -- "One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110209163248.gb16...@khazad-dum.debian.net
Re: The "node" command in Debian
On 02/08/2011 05:04 PM, Hamish Moffatt wrote: Similar AX.25 tools "call" and "listen" were renamed in 2007 to ax* (package ax25-apps), because those names were too generic (according to the changelog). ... resulting in considerable confusion from many people, given that much documentation out there refers to call and listen. I, for one, was rather puzzled, especially since there is also an ax25_call which does something different. Not saying it was a bad choice, but just that this was what the result was. Much existing documentation is confusing to Debian users. Also, it should be stated that /usr/sbin/node is normally started from ax25d, which is somewhat analogous to inetd. It is not normally invoked by users (though it could be). Renaming it will break servers unless users are well aware. -- John -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4d52b24f.2010...@complete.org
Re: The "node" command in Debian
On Mon, Feb 07, 2011 at 10:54:24AM -0200, Henrique de Moraes Holschuh wrote: > On Mon, 07 Feb 2011, Jonathan Nieder wrote: > > The LinuxNode project > > - > > The other is a frontend to libax25, an AX.25 implementation for Linux. > > Hardware implementations of AX.25 are apparently called "terminal node > > controllers" or "nodes" for short; hence this Linux-based > > implementation was called LinuxNode and its binary called "node". It > > was introduced in January, 1996. It seems that its family tree also > > includes (unpackaged) implementations named AWZNode and FlexNode. > > 1996 was a long time ago, the world was much smaller back then. It was > still a very very poor choice of naming, and it should have been named > ax25node from day one. Similar AX.25 tools "call" and "listen" were renamed in 2007 to ax* (package ax25-apps), because those names were too generic (according to the changelog). I think renaming the node binary to axnode is reasonable and consistent with this, but I don't think the nodejs program should be using that name either. > If push comes to shove, nobody is going to try to force _them_ to give > up that name. You can get the package itself renamed to ax25node, and > have the required "node" transitional package in squeeze+1, so as to > have no "node" package in squeeze+2, but rename the executable itself? > not likely. We did it with call and listen, both used from the command line more frequently, so it's not out of the question. > 4. as the one with the weaker claim, node.js can move its executable out >of the generic namespace or rename its executable to something else. I think it should do that anyway. Hamish -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110208230458.ga23...@risingsoftware.com
Re: The "node" command in Debian
Simon McVittie writes ("Re: The "node" command in Debian"): > On Mon, 07 Feb 2011 at 04:46:57 -0600, Jonathan Nieder wrote: > > Problem: scripts may use the 'node' name to refer to either of these > > programs. Which should get the name? You decide, based not on > > popularity or priority but --- well, based on whatever makes sense. > > Perhaps rename both, also provide symlinks > /usr/share/nodejs/node -> /usr/bin/nodejs and > /usr/share/ax25node/node -> /usr/sbin/ax25node, and users who(se local > scripts) expect to just run 'node' can add either /usr/share/nodejs or > /usr/share/ax25node to their $PATH? This would certainly be no worse than a harmless sop to people who think users can't be expected to make an alias symlink themselves. Ian. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/19793.21222.708454.774...@chiark.greenend.org.uk
Re: The "node" command in Debian
On Mon, 07 Feb 2011 at 04:46:57 -0600, Jonathan Nieder wrote: > Problem: scripts may use the 'node' name to refer to either of these > programs. Which should get the name? You decide, based not on > popularity or priority but --- well, based on whatever makes sense. Perhaps rename both, also provide symlinks /usr/share/nodejs/node -> /usr/bin/nodejs and /usr/share/ax25node/node -> /usr/sbin/ax25node, and users who(se local scripts) expect to just run 'node' can add either /usr/share/nodejs or /usr/share/ax25node to their $PATH? See also nmh, which adds a large number of generically-named binaries (post, show, send, pick, mark, etc.) to a directory that's not in the default $PATH, so its users can add that directory to their $PATH. S -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110208110131.gb8...@reptile.pseudorandom.co.uk
Re: The "node" command in Debian
On 12384 March 1977, Jérémy Lal wrote: > 5. nodejs package provides /usr/bin/nodejs, following policy. >nodejs-notrenamed package links /usr/bin/node to nodejs, and conflicts >with node package. And end up with two exactly identical binary packages (except for the filename) in the archive? No. If one wants this, there COULD be a script in the nodejs package offering to do such a rename (by possible using dpkg-divert or another such tool, making sure it stays like this even with upgrades) -- bye, Joerg cat /dev/urandom > /dev/dsp zobel: das nennt sich "metal" oder "techno", je nachdem Ganneff: apocalyptica? youam: nein, das is random, nich urandom :) -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87lj1reyqa@gkar.ganneff.de
Re: The "node" command in Debian
* Jérémy Lal [110207 18:21]: > > 2. they can be forced (by the TC) to drop their claim of "node" in the > >common namespace. This is not likely to happen. If both camps can rightly argue that some other command called "node" might make things in their camp call the wrong thing, then this is the only reasonable solution. > Another proposal : > > 5. nodejs package provides /usr/bin/nodejs, following policy. >nodejs-notrenamed package links /usr/bin/node to nodejs, and conflicts >with node package. > > + Both packages node and nodejs can be installed, with full functionnality. > + If the renaming is too much a burden for the user, he can install the > not renamed version, knowing he can't install node package in that case. > - Depending on nodejs-notrenamed must be impossible (is this possible ?) > - All packages depending on nodejs must be able to work with /usr/bin/nodejs. > - It is still violating policy, though in a more flexible and twisted way. A user wanting to have a node command can also just create a symlink manually (if things call only node without path, they can even just add that into /usr/local/[s]bin without thinking about diversions (though diversions would not really be necessary as path is essentially dead for packages). There is not really a need for a package if nothing can depend on it, all tests should be done without and a user can get the same effect with a single simple command. Bernhard R. Link -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110207194229.ga26...@pcpool00.mathematik.uni-freiburg.de
Re: The "node" command in Debian
On 07/02/2011 13:54, Henrique de Moraes Holschuh wrote: > 1. they can declare a conflict with each other, so that the packaging >system will never let both get installed in the same system. > >Unless both communities have a large overlap, this one makes both >happy, until a third package shows up trying to claim "node". > > 2. they can be forced (by the TC) to drop their claim of "node" in the >common namespace. This is not likely to happen. > > 3. It is possible that they could do nothing, since there is no direct >file conflict (different paths). Not good for the unaware user that >installs both, but I am not sure whether we forbid this kind of >potential pitfall in the first place. > > 4. as the one with the weaker claim, node.js can move its executable out >of the generic namespace or rename its executable to something else. > Another proposal : 5. nodejs package provides /usr/bin/nodejs, following policy. nodejs-notrenamed package links /usr/bin/node to nodejs, and conflicts with node package. + Both packages node and nodejs can be installed, with full functionnality. + If the renaming is too much a burden for the user, he can install the not renamed version, knowing he can't install node package in that case. - Depending on nodejs-notrenamed must be impossible (is this possible ?) - All packages depending on nodejs must be able to work with /usr/bin/nodejs. - It is still violating policy, though in a more flexible and twisted way. Jérémy. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4d502603.8040...@edagames.com
Re: The "node" command in Debian
brian m. carlson writes ("Re: The "node" command in Debian"): > The definition of "filename" here is unclear. AX.25's node is in > /usr/sbin (IIRC) and nodejs's is in /usr/bin. This, of course, poses > practical problems for people that have both in their path. This is > usually the case for root, and for some users as well. Yes. > Lacking an official definition for "filename" in Policy, I think it's > reasonable to assume that it should not be read as "path", and instead > be read to forbid this use (as you said, Ian). Nevertheless, I see how > reasonable people could disagree. The point of the exercise is not just to stop dpkg complaining when the packages are installed (otherwise Conflicts would suffice). The point is to try to arrange that when one bit of the system (or a user) asks for something by name, they don't get something entirely unrelated. The same principle should apply to any namespace, not just the command namespace. So for example we would not tolerate a new kernel module that used AF_INET for something strange, nor two applications which used the same object paths in dbus for unrelated purposes, nor two sets of packages which use the same virtual package name for unrelated purposes, or anything else similar. Nor should we accept two sets of shared libraries which exported the same function names for different purposes (although I guess we don't check for this automatically, and there would probably be more cases where it would be easier to argue that there was no harm done). Ian. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/19792.8082.728268.491...@chiark.greenend.org.uk
Re: The "node" command in Debian
On Mon, Feb 07, 2011 at 03:43:48PM +, Ian Jackson wrote: > Henrique de Moraes Holschuh writes ("Re: The "node" command in Debian"): > > 1. they can declare a conflict with each other, so that the packaging > >system will never let both get installed in the same system. > > No, this is explicitly forbidden by policy and quite rightly so. What Policy actually says is (§10.1): Two different packages must not install programs with different functionality but with the same filenames. The definition of "filename" here is unclear. AX.25's node is in /usr/sbin (IIRC) and nodejs's is in /usr/bin. This, of course, poses practical problems for people that have both in their path. This is usually the case for root, and for some users as well. Lacking an official definition for "filename" in Policy, I think it's reasonable to assume that it should not be read as "path", and instead be read to forbid this use (as you said, Ian). Nevertheless, I see how reasonable people could disagree. -- brian m. carlson / brian with sandals: Houston, Texas, US +1 832 623 2791 | http://www.crustytoothpaste.net/~bmc | My opinion only OpenPGP: RSA v4 4096b: 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187 signature.asc Description: Digital signature
Re: The "node" command in Debian
On 07/02/2011 16:43, Adrian von Bidder wrote: > On Monday 07 February 2011 13.54:24 Henrique de Moraes Holschuh wrote: >> 1. they can declare a conflict with each other, so that the packaging >>system will never let both get installed in the same system. > > JavaScript and AX.25 sounds like it might be quite a distance in terms of > people involved, although this is really just a guess. > > Start with a package conflict plus explanatory notice in README.Debian and > move on to other measures if "enough" people complain, perhaps? +1 though against policy, it is the least frustration (and work) path. > Downside is of course that this discussion will probably repeated a few > times. Let's hope nobody want to drive ax25 through nodejs. Jérémy. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4d501428.5090...@edagames.com
Re: The "node" command in Debian
Henrique de Moraes Holschuh writes ("Re: The "node" command in Debian"): > 1. they can declare a conflict with each other, so that the packaging >system will never let both get installed in the same system. No, this is explicitly forbidden by policy and quite rightly so. Ian. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/19792.4916.750805.893...@chiark.greenend.org.uk
Re: The "node" command in Debian
On Monday 07 February 2011 13.54:24 Henrique de Moraes Holschuh wrote: > 1. they can declare a conflict with each other, so that the packaging >system will never let both get installed in the same system. JavaScript and AX.25 sounds like it might be quite a distance in terms of people involved, although this is really just a guess. Start with a package conflict plus explanatory notice in README.Debian and move on to other measures if "enough" people complain, perhaps? Downside is of course that this discussion will probably repeated a few times. cheers -- vbi -- As we found out later, our activities had both saturated an uplink two "hops" up from our university, at the Nordic University Network level and made some DoS-alarms go off at the national level. All part of a fun release. -- serving Debian sarge and Ubuntu Breezy CD images http://www.acc.umu.se/~maswan/2005-12-10/2gbit-freesoftware.html signature.asc Description: This is a digitally signed message part.
Re: The "node" command in Debian
On Mon, 07 Feb 2011, Jonathan Nieder wrote: > As you may know[0], there are currently two packages in Debian > experimental providing a "node" binary. > > [0] http://lists.debian.org/debian-devel/2010/08/msg00568.html ... > One is from the node.js project. It was renamed from "server" to > "node" on March 3, 2009. The purpose of this tool is to run servers So, this one has a past history of hazardous, poor thought-out behavior re. the global namespace... and it blew its second chance when it went from "server" (insanely bad choice) to "node" (another insanely bad choice, for _exactly the same reasons_). > The LinuxNode project > - > The other is a frontend to libax25, an AX.25 implementation for Linux. > Hardware implementations of AX.25 are apparently called "terminal node > controllers" or "nodes" for short; hence this Linux-based > implementation was called LinuxNode and its binary called "node". It > was introduced in January, 1996. It seems that its family tree also > includes (unpackaged) implementations named AWZNode and FlexNode. 1996 was a long time ago, the world was much smaller back then. It was still a very very poor choice of naming, and it should have been named ax25node from day one. > | As a continuous very long term (about 1994) user of kernel ax25 I > | object strongly to this request which will affect far more users > | world-wide than just a few nodejs users. > > [2] http://lists.debian.org/debian-hams/2010/08/msg00032.html You go for generic names in the common namespace, you set yourself up for disaster, and you get what you deserve. However, Debian has a lot of penetration in the HAM community, "node" has preferred usage for networking matters in any Unix-like system due to more than 20 years of tradition, and they have a previous claim for the name. Poorly named as it is, that package has been in Debian stable releases since 1999. If push comes to shove, nobody is going to try to force _them_ to give up that name. You can get the package itself renamed to ax25node, and have the required "node" transitional package in squeeze+1, so as to have no "node" package in squeeze+2, but rename the executable itself? not likely. > Problem: scripts may use the 'node' name to refer to either of these > programs. Which should get the name? You decide, based not on > popularity or priority but --- well, based on whatever makes sense. The nasty thing is that whatever answers to "node" is defined by path precedence, and often sbin is only included for root, so it is a large pitfall. > If no consensus emerges, policy §10.1 in its Solomon-like wisdom says > _both_ commands must be renamed. I hope we can do better. I will be > happy to file release-critical bugs against both packages to that > effect if not. 1. they can declare a conflict with each other, so that the packaging system will never let both get installed in the same system. Unless both communities have a large overlap, this one makes both happy, until a third package shows up trying to claim "node". 2. they can be forced (by the TC) to drop their claim of "node" in the common namespace. This is not likely to happen. 3. It is possible that they could do nothing, since there is no direct file conflict (different paths). Not good for the unaware user that installs both, but I am not sure whether we forbid this kind of potential pitfall in the first place. 4. as the one with the weaker claim, node.js can move its executable out of the generic namespace or rename its executable to something else. -- "One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110207125424.ga26...@khazad-dum.debian.net
Re: The "node" command in Debian
Jonathan Nieder writes ("The "node" command in Debian"): > (please follow-up to debian-devel only) > If no consensus emerges, policy §10.1 in its Solomon-like wisdom says > _both_ commands must be renamed. I hope we can do better. I will be > happy to file release-critical bugs against both packages to that > effect if not. I think this is exactly the correct thing to do in this case. At least no scripts will get the wrong program. An alternative would be to somehow arrange for "node" to be #!/bin/sh cat >&2 <http://lists.debian.org/19791.54839.224469.762...@chiark.greenend.org.uk
The "node" command in Debian
(please follow-up to debian-devel only) Hi Debianites, As you may know[0], there are currently two packages in Debian experimental providing a "node" binary. [0] http://lists.debian.org/debian-devel/2010/08/msg00568.html The node.js project --- One is from the node.js project. It was renamed from "server" to "node" on March 3, 2009. The purpose of this tool is to run servers and other event-based programs written in Javascript. The maintainer for this package in Debian has written[1]: | not having /usr/bin/node as nodejs binary path will without any | doubt render nodejs package unuseful for a vast majority of users. [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=15;bug=611698 The LinuxNode project - The other is a frontend to libax25, an AX.25 implementation for Linux. Hardware implementations of AX.25 are apparently called "terminal node controllers" or "nodes" for short; hence this Linux-based implementation was called LinuxNode and its binary called "node". It was introduced in January, 1996. It seems that its family tree also includes (unpackaged) implementations named AWZNode and FlexNode. The node package does not seem to have a very active maintainer since Joop Stakenborg retired. On the debian-hams list, we read[2]: | As a continuous very long term (about 1994) user of kernel ax25 I | object strongly to this request which will affect far more users | world-wide than just a few nodejs users. [2] http://lists.debian.org/debian-hams/2010/08/msg00032.html Debian policy - Both of these projects are, of course, insane to use such a generic binary name. But Debian policy does not say "you must not use such a generic name unless you are a net.god" --- only common sense does. Problem: scripts may use the 'node' name to refer to either of these programs. Which should get the name? You decide, based not on popularity or priority but --- well, based on whatever makes sense. If no consensus emerges, policy §10.1 in its Solomon-like wisdom says _both_ commands must be renamed. I hope we can do better. I will be happy to file release-critical bugs against both packages to that effect if not. With hope, Jonathan Disclaimer: I am ignorant about both packages. Some naïve part of me believes that it will be possible for mature people not ignorant about them to figure out a reasonable solution. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110207104656.GA10756@elie