# $Id: PKGBUILD 147123 2012-01-22 11:00:58Z tpowa $ # Maintainer: Tom Gundersen # Contributor: Aaron Griffin # Contributor: Tobias Powalowski # Contributor: Thomas Bächler pkgbase="udev" pkgname=('udev' 'udev-compat') pkgver=178 pkgrel=1 arch=(i686 x86_64) url="http://git.kernel.org/?p=linux/hotplug/udev.git;a=summary" license=('GPL') groups=('base') options=(!makeflags !libtool) makedepends=('gobject-introspection' 'gperf' 'libxslt' 'usbutils' 'kmod') source=(ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/$pkgbase-$pkgver.tar.xz) md5sums=('173cc6061e3a82dd6e9a1a5cf767a858') build() { cd $srcdir/$pkgbase-$pkgver ./configure --prefix=/usr \ --with-rootprefix= \ --sysconfdir=/etc \ --bindir=/sbin \ --libdir=/usr/lib \ --with-rootlibdir=/lib \ --libexecdir=/lib \ --with-systemdsystemunitdir=/lib/systemd/system \ --enable-udev_acl make } package_udev() { pkgdesc="The userspace dev tools (udev)" depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils') install=udev.install backup=(etc/udev/udev.conf) cd $srcdir/$pkgbase-$pkgver make DESTDIR=${pkgdir} install # create framebuffer blacklist install -d -m755 ${pkgdir}/lib/modprobe.d/ for mod in $(find /lib/modules/*/kernel/drivers/video -name '*fb.ko.gz' -exec basename {} .ko.gz \;); do echo "blacklist $mod" done | sort -u > $pkgdir/lib/modprobe.d/framebuffer_blacklist.conf # /dev/loop0 is created for convenience, to autoload the module if necessary # this is no longer needed when util-linux-2.21 is released as /dev/loop-control # will be used instead. In that case move this to udev-compat install -d -m755 ${pkgdir}/lib/udev/devices/ mknod ${pkgdir}/lib/udev/devices/loop0 b 7 0 chgrp disk ${pkgdir}/lib/udev/devices/loop0 # udevd moved, symlink to make life easy for restarting udevd manually ln -s /lib/udev/udevd ${pkgdir}/sbin/udevd # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group for i in $pkgdir/lib/udev/rules.d/*.rules; do sed -i -e 's#GROUP="dialout"#GROUP="uucp"#g; s#GROUP="tape"#GROUP="storage"#g; s#GROUP="cdrom"#GROUP="optical"#g' $i done } package_udev-compat() { pkgdesc="The userspace dev tools (udev) - additional rules for older kernels" depends=('udev') groups=('') install -d -m755 ${pkgdir}/lib/udev/rules.d install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/rules/misc/30-kernel-compat.rules ${pkgdir}/lib/udev/rules.d/30-kernel-compat.rules # create static nodes to be compatible with on-demand module # loading in the most recent kernel # # the list of nodes is generated from /lib/modules/`most recent kernel`/modprobe.devname # excluding any devices not included in the LTS kernel and any entries in the # modprobe.devname file of the LTS kernel (if it exists). install -d -m755 ${pkgdir}/lib/udev/devices cd ${pkgdir}/lib/udev/devices install -d -m755 net mknod net/tun c 10 200 mknod ppp c 108 0 # mknod loop-control c 10 237 -- does not exist in old kernels mknod uinput c 10 223 install -d -m755 mapper mknod mapper/control c 10 236 install -d -m755 snd mknod snd/timer c 116 33 mknod snd/seq c 116 1 mknod btrfs-control c 10 234 mknod autofs c 10 235 mknod fuse c 10 229 install -d -m755 cpu mknod cpu/microcode c 10 184 } md5sums=('173cc6061e3a82dd6e9a1a5cf767a858')