INSTALL (2163B)
1make_system_dirs() { 2 # 3 # Install FHS system directories. 4 # 5 for d in boot etc etc/modprobe.d etc/modules-load.d \ 6 etc/skel home dev proc usr mnt opt sys media var run/lock; do 7 [ ! -d ${d} ] && install -d ${d} 8 done 9 10 [ ! -d root ] && install -dm750 root 11 12 # Don't try to create var/mail in the correct place if the user 13 # is updating from an old system that has var/mail as a symlink 14 [ ! -L var/mail ] && [ ! -d var/mail ] && install -dm1777 var/mail 15 16 [ ! -d var/spool ] && install -d var/spool 17 18 for d in local local/bin local/sbin local/include local/lib \ 19 bin include lib src; do 20 [ ! -d usr/${d} ] && install -d usr/${d} 21 done 22 23 for d in locale misc terminfo zoneinfo doc info; do 24 [ ! -d usr/share/${d} ] && install -d usr/share/${d} 25 [ ! -d usr/local/share/${d} ] && install -d usr/local/share/${d} 26 done 27 28 for d in 1 2 3 4 5 6 7 8; do 29 [ ! -d usr/share/man/man${d} ] && \ 30 install -d usr/share/man/man${d} 31 [ ! -d usr/local/share/man/man${d} ] && \ 32 install -d usr/local/share/man/man${d} 33 done 34 35 for d in empty log opt cache lib; do 36 [ ! -d var/${d} ] && install -d var/${d} 37 done 38 39 # Create /var/run and /var/lock symlinks. 40 for d in run lock; do 41 if [ ! -h "var/$d" -a -d var/${d} ]; then 42 echo "/${d} must not be a directory, exiting!" 43 exit 1 44 fi 45 done 46 47 cd var 48 ln -sf ../run . 49 ln -sf ../run/lock . 50 [ ! -d spool/mail ] && ln -sfn ../mail spool/mail 51 if [ -L spool/mail/mail -a "$(readlink spool/mail/mail)" = spool/mail ]; then 52 # Get rid of broken symlink created by older versions of base-files. 53 rm spool/mail/mail 54 fi 55 cd .. 56 57 install -dm1777 tmp 58 install -dm1777 var/tmp 59 60 # remove leftover polkit rules from live systems 61 [ -e etc/polkit-1/rules.d/void-live.rules ] && rm etc/polkit-1/rules.d/void-live.rules 62 63 # fix bad permissions from installer with umask 077 64 chmod 755 var var/db var/db/xbps usr usr/share 65} 66 67case "${ACTION}" in 68pre) 69 echo "Creating system directories/symlinks..." 70 make_system_dirs 71 ;; 72post) 73 echo "Creating system directories/symlinks..." 74 make_system_dirs 75 # Enable shadow passwd/groups. 76 if [ -x bin/pwconv -a -x bin/grpconv -a "$(id -u)" -eq 0 ]; then 77 pwconv && grpconv 78 fi 79 ;; 80esac