106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
# Template file for 'base-files'
 | 
						|
pkgname=base-files
 | 
						|
version=0.145
 | 
						|
revision=1
 | 
						|
bootstrap=yes
 | 
						|
depends="xbps-triggers"
 | 
						|
short_desc="Void Linux base system files"
 | 
						|
maintainer="Enno Boland <orphan@voidlinux.org>"
 | 
						|
license="Public Domain"
 | 
						|
homepage="https://www.voidlinux.org"
 | 
						|
conf_files="
 | 
						|
	/etc/inputrc
 | 
						|
	/etc/profile
 | 
						|
	/etc/hosts
 | 
						|
	/etc/host.conf
 | 
						|
	/etc/securetty
 | 
						|
	/etc/skel/.bash_profile
 | 
						|
	/etc/skel/.bash_logout
 | 
						|
	/etc/skel/.bashrc
 | 
						|
	/etc/skel/.inputrc
 | 
						|
	/etc/subuid
 | 
						|
	/etc/subgid
 | 
						|
	/etc/issue
 | 
						|
	/etc/passwd
 | 
						|
	/etc/group
 | 
						|
	/etc/fstab
 | 
						|
	/etc/crypttab
 | 
						|
	/etc/nsswitch.conf"
 | 
						|
 | 
						|
replaces="base-directories>=0"
 | 
						|
# New system groups
 | 
						|
system_groups="kvm:24 plugdev:26 usbmon:27 sgx:28"
 | 
						|
 | 
						|
do_install() {
 | 
						|
	# Create bin and lib dirs and symlinks.
 | 
						|
	for d in bin lib; do
 | 
						|
		vmkdir "usr/${d}"
 | 
						|
		ln -snrf "${DESTDIR}/usr/${d}" "${DESTDIR}/${d}"
 | 
						|
	done
 | 
						|
	# Symlink sbin paths to /usr/bin.
 | 
						|
	for d in sbin usr/sbin; do
 | 
						|
		ln -snrf "${DESTDIR}/usr/bin" "${DESTDIR}/${d}"
 | 
						|
	done
 | 
						|
	# Symlink word-specific lib paths to /usr/lib.
 | 
						|
	for d in lib usr/lib; do
 | 
						|
		ln -snrf "${DESTDIR}/usr/lib" \
 | 
						|
			"${DESTDIR}/${d}${XBPS_TARGET_WORDSIZE}"
 | 
						|
	done
 | 
						|
	# Populate 32-bit lib files on 64-bit glibc systems, for multilib.
 | 
						|
	if [ "${XBPS_TARGET_WORDSIZE}" = "64" ] && [ "${XBPS_TARGET_LIBC}" = "glibc" ]; then
 | 
						|
		vmkdir usr/lib32
 | 
						|
		ln -snrf "${DESTDIR}/usr/lib32" "${DESTDIR}/lib32"
 | 
						|
		ln -sf ../lib/locale "${DESTDIR}/usr/lib32/locale"
 | 
						|
		vinstall "${FILESDIR}/ld.so.lib32.conf" 644 etc/ld.so.conf.d lib32.conf
 | 
						|
	fi
 | 
						|
 | 
						|
	# Install misc config files.
 | 
						|
	for f in bash_logout bash_profile bashrc inputrc; do
 | 
						|
		vinstall ${FILESDIR}/dot_${f} 644 etc/skel .${f}
 | 
						|
	done
 | 
						|
 | 
						|
	vinstall ${FILESDIR}/securetty 600 etc
 | 
						|
	for f in profile hosts host.conf issue subuid subgid \
 | 
						|
		inputrc fstab passwd group crypttab nsswitch.conf; do
 | 
						|
		vinstall ${FILESDIR}/${f} 644 etc
 | 
						|
	done
 | 
						|
	vmkdir etc/colors
 | 
						|
	vmkdir etc/profile.d
 | 
						|
	install -m644 ${FILESDIR}/*.sh ${DESTDIR}/etc/profile.d
 | 
						|
	install -m644 ${FILESDIR}/DIR_COLORS* ${DESTDIR}/etc/colors
 | 
						|
 | 
						|
	# modprobe(8) files
 | 
						|
	vinstall ${FILESDIR}/usb-load-ehci-first 644 usr/lib/modprobe.d usb-load-ehci-first.conf
 | 
						|
	vinstall ${FILESDIR}/blacklist.conf 644 usr/lib/modprobe.d
 | 
						|
	# sysctl(8) files
 | 
						|
	vinstall ${FILESDIR}/sysctl.conf 644 usr/lib/sysctl.d 10-void.conf
 | 
						|
	vinstall ${FILESDIR}/sysctl-user.conf 644 usr/lib/sysctl.d 10-void-user.conf
 | 
						|
	vinstall ${FILESDIR}/bpf.conf 644 usr/lib/sysctl.d 20-bpf.conf
 | 
						|
 | 
						|
	# Install common licenses, from Debian.
 | 
						|
	vmkdir usr/share/licenses
 | 
						|
	install -m644 ${FILESDIR}/licenses/* ${DESTDIR}/usr/share/licenses
 | 
						|
 | 
						|
	# vkpurge
 | 
						|
	vbin ${FILESDIR}/vkpurge
 | 
						|
	vman ${FILESDIR}/vkpurge.8
 | 
						|
	vcompletion "${FILESDIR}"/_vkpurge zsh vkpurge
 | 
						|
 | 
						|
	vbin ${FILESDIR}/lsb_release
 | 
						|
 | 
						|
	# Install default dracut configuration.
 | 
						|
	vinstall ${FILESDIR}/dracut.conf.d.voidlinux.conf 644 \
 | 
						|
		usr/lib/dracut/dracut.conf.d 00-void.conf
 | 
						|
 | 
						|
	# Create /proc/self/mounts -> /etc/mtab symlink.
 | 
						|
	ln -sf /proc/self/mounts ${DESTDIR}/etc/mtab
 | 
						|
 | 
						|
	# udev rules
 | 
						|
	vmkdir usr/lib/udev/rules.d
 | 
						|
	install -m644 ${FILESDIR}/*.rules ${DESTDIR}/usr/lib/udev/rules.d
 | 
						|
 | 
						|
	# os-release in the expected places
 | 
						|
	vinstall ${FILESDIR}/os-release 644 /usr/lib/
 | 
						|
	ln -s ../usr/lib/os-release ${DESTDIR}/etc/os-release
 | 
						|
}
 |