Redmine files not executable, but log files are executable

Miroslav Lachman 000.fbsd at quip.cz
Fri Feb 5 00:07:49 UTC 2010


Hi,

I am new to installation of www/redmine from ports. I am surprised that 
all redmine files are not executable. Including files which should be 
executed by startup script etc. (I mean files in script/ directory, 
mainly script/server)
These files are executables in the original source tar archive.

What is more surprising is that after reinstall or upgrade of redmine, 
there are executable bits set on logfiles, because of recursive chmod in 
redmine/Makefile:

.for f in files log tmp public/plugin_assets
         ${CHMOD} -R 755 ${WWWDIR}/${f}
.endfor

redmine/# find . -type f -perm +0111 -ls
321080   2 -rwxr-xr-x   1 www  www  374 May 28  2009 
./public/plugin_assets/README
  14111   2 -rwxr-xr-x   1 www  www   36 Sep 13 14:10 ./files/delete.me
321079   2 -rwxr-xr-x   1 www  www   51 May 28  2009 ./log/production.log
  14119   2 -rwxr-xr-x   1 www  www   36 Sep 13 14:10 ./log/delete.me


I know that the first problem is caused by COPYTREE_SHARE in do-install: 
and I am asking if it is really necesarry to have all files set to 0444, 
I think those few files should be installed executable as in the 
original archive.
And chmod for directories should be not recursive to not set executable 
bits on files from previous installation.

So my proposal is use chmod without -R on directories only:

.for f in files log tmp tmp/cache tmp/sessions tmp/sockets 
public/plugin_assets
         ${CHMOD} 755 ${WWWDIR}/${f}
.endfor

And to set 0554 on files in scripts/ directory

.for f in about breakpointer console destroy generate plugin runner server
         ${CHMOD} 0555 ${WWWDIR}/script/${f}
.endfor

(and maybe some files in script/performance + script/process too)

What you think about that?

Miroslav Lachman


More information about the freebsd-ports mailing list