#21389: Customized umask setting produces wrong permissions on installed files on Snow Leopard -------------------------------+-------------------------------------------- Reporter: m@… | Owner: blair@… Type: defect | Status: reopened Priority: Normal | Milestone: MacPorts Future Component: base | Version: 1.8.0 Resolution: | Keywords: snowleopard Port: | -------------------------------+-------------------------------------------- Changes (by raimue@…): * status: closed => reopened * component: ports => base * milestone: => MacPorts Future * keywords: => snowleopard * resolution: worksforme => * port: db46 => Comment: Replying to [comment:3 m@…]:
However, it worked before and still works for other ports. So, my umask setting should not be the actual cause (defect).
I have encountered the same problem and apparently sudo handles umask differently on Snow Leopard by inheriting the user's umask. We just need a way to deal with this new behavior. This is not a problem for ports using /usr/bin/install and xinstall as this explicitely changes the permissions, but for everything using e.g. cp or file copy this can be an issue. Also the receipt files and everything else MacPorts creates (distfiles, build directories, work symlink) will have the "wrong" permissions. My proposal is to add a new --with-umask setting to the configure script in the same style we already have --with-install-user, --with-install- group and --with-directory-mode. It would default to 0022. Changing the umask setting affects the current process and any new forks, so after loading the macports Tcl extension it would be changed for this process. Could this be a problem for any software? The alternative would be to explicitely set permissions on every file creation which would be complicated and require rewrite where we use Tcl API (e.g. file copy). -- Ticket URL: <http://trac.macports.org/ticket/21389#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS