void-packages

Void Source Packages
git clone git://ezup.dev/void-packages.git
Log | Files | Refs | README | LICENSE

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