Opened 7 years ago

Closed 2 years ago

#55468 closed defect (invalid)

macports destroot.umask not recursively applied

Reported by: tcwan (TC Wan) Owned by:
Priority: Normal Milestone:
Component: base Version: 2.4.2
Keywords: highsierra Cc:
Port:

Description (last modified by ryandesign (Ryan Carsten Schmidt))

This was working fine in Sierra (10.12), and as far as I can tell, the initial release of High Sierra 10.13, but it no longer works after apply the High Sierra 10.13.1 root security patch.

I'm trying to build a user port which installs files under /opt/local/share/, but the default owner and umask no longer allows the install to write to the directories.

Invoking destroot.umask 002 does not solve the problem as it does not apply the mask to all subdirectories.

ll /opt/local/var/macports/build/___DELETED___/rftg/work/destroot/
total 0
drwxr-xr-x  7 root      wheel  238  5 Dec 10:53 ./
drwxr-xr-x  8 macports  wheel  272  5 Dec 10:53 ../
drwxr-xr-x  3 root      admin  102  5 Dec 10:53 Applications/
drwxr-xr-x  2 root      admin   68  5 Dec 10:53 Developer/
drwxr-xr-x  2 root      admin   68  5 Dec 10:53 Library/
drwxrwxr-x  3 root      wheel  102  5 Dec 10:53 opt/
drwxr-xr-x  2 root      wheel   68  5 Dec 10:53 usr/

ll /opt/local/var/macports/build/___DELETED___/rftg/work/destroot/opt/
total 0
drwxrwxr-x   3 root  wheel  102  5 Dec 10:53 ./
drwxr-xr-x   7 root  wheel  238  5 Dec 10:53 ../
drwxr-xr-x  12 root  admin  408  5 Dec 10:53 local/

I expect that destroot.umask to be recursively applied to all folders under /opt.

Attachments (4)

rftg-main.log.gz (12.0 KB) - added by tcwan (TC Wan) 7 years ago.
Build Log where destroot fails when trying to run install -d with subdirectories under /opt/local/share
Portfile (762 bytes) - added by tcwan (TC Wan) 7 years ago.
Portfile for rftg
Portfile.2 (781 bytes) - added by tcwan (TC Wan) 6 years ago.
Latest Portfile referencing most recent git commit.
ports_games_rftg-rftg-main.log.gz (12.7 KB) - added by tcwan (TC Wan) 6 years ago.
Build error when attempting to install to $(DESTROOT)/opt/local/share/rftg

Download all attachments as: .zip

Change History (8)

Changed 7 years ago by tcwan (TC Wan)

Attachment: rftg-main.log.gz added

Build Log where destroot fails when trying to run install -d with subdirectories under /opt/local/share

Changed 7 years ago by tcwan (TC Wan)

Attachment: Portfile added

Portfile for rftg

comment:1 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: highsierra added; destroot.umask removed
Port: macports removed

comment:2 Changed 6 years ago by tcwan (TC Wan)

~Seems to have resolved itself in the latest git release for the package. It doesn't try to install man pages anymore.~

Strange. I tried building on a different system, also updated to the latest MacPorts and macOS 10.13.6, but it complains about attempting to write to $(DESTROOT)/opt/local/share/rftg

Tested on MacPorts 2.5.3.

Last edited 6 years ago by tcwan (TC Wan) (previous) (diff)

Changed 6 years ago by tcwan (TC Wan)

Attachment: Portfile.2 added

Latest Portfile referencing most recent git commit.

Changed 6 years ago by tcwan (TC Wan)

Build error when attempting to install to $(DESTROOT)/opt/local/share/rftg

comment:3 Changed 6 years ago by tcwan (TC Wan)

This issue seems to have been resolved on macOS Mojave (10.14) and MacPorts 2.5.4. destroot for this package is working now.

comment:4 Changed 2 years ago by jmroot (Joshua Root)

Resolution: invalid
Status: newclosed

The failure in the logs appears to have been due to missing execute permissions on install-sh in the rtfg source, not anything to do with base.

Note: See TracTickets for help on using tickets.