poudriere: "Permission denied" in the extract phase?

Marcin Cieslak saper at saper.info
Fri Mar 2 20:00:00 UTC 2018


On Thu, 1 Mar 2018, Yuri wrote:

> On 02/26/18 17:11, Marcin Cieslak wrote:
> > So I don't know what has changed and why but the temporary fix is to
> > use "if" to check if the desired files are not already there, and
> > then proceeding with "post-fetch" only if the files are not found.
> 
> 
> Some time back I was working on nodejs support:
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=204577
> 
> So far, I couldn't make it stable because after a week or two files fetched
> from the npm server change without an apparent reason.
> 
> I will return to it to see if the situation improved.

Hi Yuri,

thanks for the pointer - it is very useful! Also I find a very useful reference
to Olivier Duchateau's work as well.

I share your pain. I am maintaining this local port for 2 years and it is a pain.
I must admit the pain comes not only from npm volatility (I somehow managed
to handle that) but mostly from the fact that I still needed to maintain
node 0.10, node 0.12 and io.js support while they were gone.

It is also interesting how the two different approaches - your approach
to help build larger applications ports simply (that could help, for example,
the current net-im/mastodon port by jrm@) or more comprehensive apporach
from Oliver - ruby-style, one port per registry package.

The latter approach is more correct but will be problematic in case of
when package A requires package B~1.0 and package C requires package B~2.0.

So we will need some why to have "local" modules installed under application
specific node_modules (/usr/local/lib/node_modules/package_c/node_modules/package_b_2.0).

Good news is that for binary modules (where I am mostly interested) we will
need to simply disallow this - not because we believe we are the best in the world,
but because trying dlopen() second binary module with the same name into node
will not work as expected.

I also would like to have possibility to build for multiple node engines (node4-,
node6-, node8- and node9-) which is a must for binary packages. I would even
use NODE_MODULES_VERSION API number instead of 4, 6, 8, 9.

So, for binary modules we have to have Oliver's approach, for the rest, it will be hard.

I'll try to examine your patches and come up with something reasonable.

Marcin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3663 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20180302/b077b3f6/attachment.bin>


More information about the freebsd-ports mailing list