
Placing mdns after dns in the host database resolution can cause unintuitive failures for users without nss-mdns or mDNSResponder. When looking up an invalid host, having order "dns mdns" will cause a dns "notfound" result to fall through to mdns, which will yield "unavailable" for users without an mdns provider. This causes clients like ssh to report "Device or resource busy" rather than a more meaningful message to indicate that the hostname is not valid. Flipping back to order "mdns dns" will case an "unavailable" mdns result to fall through to dns, which then returns "notfound" that clients interpret as expected. Because both mDNSResponder and nss-mdns offer a generic mdns provider. The mdns4 and mdns4_minimal providers offered by nss-mdns are subsets of the generic mdns provider, so there is no value in restoring the original "mdns mdns4_minimal mdns4" ordering (in fact, this may have caused failed mdns lookups to be repeated three times). All have been coalesced into the single mdns provider. This (partially) reverts commit cc11e17fab0d514f75a01aa79e44edb06f16bffe.
99 lines
2.6 KiB
Bash
99 lines
2.6 KiB
Bash
# Template file for 'base-files'
|
|
pkgname=base-files
|
|
version=0.141
|
|
revision=7
|
|
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"
|
|
|
|
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 systems, for multilib.
|
|
if [ "${XBPS_TARGET_WORDSIZE}" = "64" ]; 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
|
|
|
|
# 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
|
|
|
|
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
|
|
}
|