#93: Incorrect permissions on library install
----------------------------+-----------------------------------------------
Reporter: guest | Owner:
Type: defect | Status: reopened
Priority: normal | Milestone: Cabal-1.8
Component: Cabal library | Version: 1.1.4
Severity: normal | Resolution:
Keywords: | Difficulty: normal
Ghcversion: 6.10.1 | Platform: Linux
----------------------------+-----------------------------------------------
Changes (by GregoryWeber):
* status: closed => reopened
* ghcversion: 6.4.2 => 6.10.1
* resolution: fixed =>
Comment:
Replying to [comment:7 duncan]:
> Fixed in cabal head and the 1.6 branch.
>
> The behavior now when installing is that we ignore the permissions the
files had in the build tree and the user's umask. We explicitly set
permissions for all files we install.
>
That seems to be working well for most files, but those listed in the
data-files field of the Cabal package are still installed with permission
rw for the owner (root), zero permission for group and others.
{{{
[r...@squirrel cal3d-examples-0.1]# uname -a
Linux squirrel.localdomain 2.6.27.25-170.2.72.fc10.i686 #1 SMP Sun Jun 21
19:03:24 EDT 2009 i686 i686 i386 GNU/Linux
[r...@squirrel cal3d-examples-0.1]# ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.10.1
[r...@squirrel cal3d-examples-0.1]# ghc-pkg list Cabal
/usr/lib/ghc-6.10.1/./package.conf:
Cabal-1.6.0.1
[r...@squirrel cal3d-examples-0.1]# runghc Setup install
Installing executable(s) in /opt/bin
[r...@squirrel cal3d-examples-0.1]# cd /opt/share/cal3d-examples-0.1/
[r...@squirrel cal3d-examples-0.1]# ls -l
total 4
drwxr-xr-x 2 root root 4096 2009-06-27 17:13 data
[r...@squirrel cal3d-examples-0.1]# ls -l data
total 696
-rw------- 1 root root 6400 2009-06-27 17:13 cally_calf_left.cmf
-rw------- 1 root root 6464 2009-06-27 17:13 cally_calf_right.cmf
-rw------- 1 root root 16968 2009-06-27 17:13 cally_chest.cmf
-rw------- 1 root root 210 2009-06-27 17:13 cally_chest.xrf
-rw------- 1 root root 3216 2009-06-27 17:13 cally.csf
[snip]
}}}
I can work around this by doing
{{{
chmod -Rf g+rX,o+rX .
}}}
in the source directory where I am developing the package, __before__
building the source tarballs for release. Of course, likewise the
installer can do so after unpacking the tarballs, or even after the files
are installed.
Seems like this might be a big nuisance for projects using darcs with
multiple developers, since darcs does not preserve file permissions.
--
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/93#comment:8>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects_______________________________________________
cabal-devel mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cabal-devel