Date: Wed, 29 Jan 2014 13:44:52 GMT From: Sébastien Santoro <dereckson@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: misc/186235: [www/npm] [patch] port depends of node/node-devel packages Message-ID: <201401291344.s0TDiqg2092123@oldred.freebsd.org> Resent-Message-ID: <201401291350.s0TDo0h4060389@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 186235
>Category: misc
>Synopsis: [www/npm] [patch] port depends of node/node-devel packages
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Jan 29 13:50:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator: Sébastien Santoro
>Release: 10.0-RELEASE
>Organization:
>Environment:
FreeBSD threyscend.drake 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
RUN_DEPENDS doesn't look for /usr/local/bin/node, but for a Node package:
.if ${PORT_OPTIONS:MNODE_DEVEL}
RUN_DEPENDS+= node-devel>=0.8.0:${PORTSDIR}/www/node-devel
.else
RUN_DEPENDS+= node>=0.8.0:${PORTSDIR}/www/node
.endif
The package doesn't do any operation dependings of this setting, so could look for node binary instead.
A use case is a Node shared hosting facility with on two staging servers a development version available in continuous integration recompiling each hour from Node repository.
* * *
I guess the current choice comes from versioning. We're at v0.10.25, dev version is at 0.11. 0.8.0 were release June 25, 2012, which is quite recently, but from the 0.8.0 release announcement:
* "Node got a lot faster."
* "Node got more stable."
* "You can do stuff with file descriptors again."
And indeed, the 0.6 version were barely usable, so I really doubt the scenario "someone wants to install www/npm on an old node" will occur.
>How-To-Repeat:
A.
(1) Install node manually, or node-devel without editing www/npm port config
(2) Install www/npm package and see it install an already installed Node or complaint about conflict
B.
(1) Install www/node-devel or www/node
(2) In www/npm port config, ask node or node-devel, the other setting from 1
(3) Install www/npm package it will complaints about conflict
>Fix:
Index: Makefile
===================================================================
--- Makefile (revision 341737)
+++ Makefile (working copy)
@@ -48,9 +48,9 @@
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MNODE_DEVEL}
-RUN_DEPENDS+= node-devel>=0.8.0:${PORTSDIR}/www/node-devel
+RUN_DEPENDS+= ${PREFIX}/bin/node:${PORTSDIR}/www/node-devel
.else
-RUN_DEPENDS+= node>=0.8.0:${PORTSDIR}/www/node
+RUN_DEPENDS+= ${PREFIX}/bin/node:${PORTSDIR}/www/node
.endif
post-patch:
>Release-Note:
>Audit-Trail:
>Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201401291344.s0TDiqg2092123>
