diff options
author | root <root@rshg054.dnsready.net> | 2012-02-16 23:15:21 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-02-16 23:15:21 +0000 |
commit | 76774d40da5ce246c9f2178fdf937706d99af4b2 (patch) | |
tree | d94469586899ec9ccf256ca7fab766f6e82f3cf1 /testing/udev | |
parent | 2e50a79768e42c26ff8850404f488425610abc0a (diff) |
Thu Feb 16 23:15:21 UTC 2012
Diffstat (limited to 'testing/udev')
-rw-r--r-- | testing/udev/PKGBUILD | 70 | ||||
-rw-r--r-- | testing/udev/initcpio-hooks-udev | 9 | ||||
-rw-r--r-- | testing/udev/initcpio-install-udev | 26 | ||||
-rw-r--r-- | testing/udev/modprobe.nouevau.conf | 7 | ||||
-rw-r--r-- | testing/udev/udev.install | 55 |
5 files changed, 167 insertions, 0 deletions
diff --git a/testing/udev/PKGBUILD b/testing/udev/PKGBUILD new file mode 100644 index 000000000..531c062d3 --- /dev/null +++ b/testing/udev/PKGBUILD @@ -0,0 +1,70 @@ +# $Id: PKGBUILD 150221 2012-02-15 08:53:37Z tomegun $ +# Maintainer: Tom Gundersen <teg@jklm.no> +# Contributor: Aaron Griffin <aaron@archlinux.org> +# Contributor: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: Thomas Bächler <thomas@archlinux.org> + +pkgname=udev +pkgver=181 +pkgrel=3 +pkgdesc="The userspace dev tools (udev)" +depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils') +install=udev.install +arch=(i686 x86_64) +license=('GPL') +makedepends=('gobject-introspection' 'gperf' 'libxslt' 'usbutils' 'kmod') +source=(ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/$pkgname-$pkgver.tar.xz + initcpio-hooks-udev + initcpio-install-udev + modprobe.nouevau.conf) +url="http://git.kernel.org/?p=linux/hotplug/udev.git;a=summary" +backup=(etc/udev/udev.conf) +groups=('base') +options=(!makeflags !libtool) + +build() { + cd $srcdir/$pkgname-$pkgver + + ./configure --prefix=/usr \ + --with-rootprefix= \ + --sysconfdir=/etc \ + --libdir=/usr/lib \ + --libexecdir=/lib \ + --with-systemdsystemunitdir=/lib/systemd/system \ + --enable-udev_acl + + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=${pkgdir} install + + # /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. Support for this will go away in a future version of udev + 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}/usr/bin/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 + + # nouveau still conflicts with some other standard kernel modules, should go away soon + install -D -m644 ../modprobe.nouevau.conf ${pkgdir}/lib/modprobe.d/nouveau.conf + + # install the mkinitpcio hook + install -D -m644 ../initcpio-hooks-udev ${pkgdir}/lib/initcpio/hooks/udev + install -D -m644 ../initcpio-install-udev ${pkgdir}/lib/initcpio/install/udev +} +md5sums=('0d7af750702620a871b9f9b98d8ad859' + 'a4dd853050bf2e0ae6b2e3d2c75499c2' + 'ee0bfe91a20fff12cc25ab1d1e024853' + '633dabda1fbfa4b6fe4dab5452b40fed') diff --git a/testing/udev/initcpio-hooks-udev b/testing/udev/initcpio-hooks-udev new file mode 100644 index 000000000..87aa7960f --- /dev/null +++ b/testing/udev/initcpio-hooks-udev @@ -0,0 +1,9 @@ +# vim: set ft=sh: +run_hook () +{ + msg -n ":: Triggering uevents..." + udevadm trigger --action=add --type=subsystems + udevadm trigger --action=add --type=devices + udevadm settle + msg "done." +} diff --git a/testing/udev/initcpio-install-udev b/testing/udev/initcpio-install-udev new file mode 100644 index 000000000..e7e2c0f60 --- /dev/null +++ b/testing/udev/initcpio-install-udev @@ -0,0 +1,26 @@ +#!/bin/bash + +build() { + FILES="/etc/udev/udev.conf" + SCRIPT="udev" + + add_binary /lib/udev/udevd + add_binary /usr/bin/udevadm + + for rules in 50-udev-default.rules 60-persistent-storage.rules 80-drivers.rules; do + add_file "/lib/udev/rules.d/$rules" + done + for tool in ata_id scsi_id; do + add_file "/lib/udev/$tool" + done +} + +help() { + cat <<HELPEOF +This hook will use udev to create your root device node and detect the needed +modules for your root device. It is also required for firmware loading in +initramfs. It is recommended to use this hook. +HELPEOF +} + +# vim: set ft=sh ts=4 sw=4 et: diff --git a/testing/udev/modprobe.nouevau.conf b/testing/udev/modprobe.nouevau.conf new file mode 100644 index 000000000..265f033ab --- /dev/null +++ b/testing/udev/modprobe.nouevau.conf @@ -0,0 +1,7 @@ +# The following modules conflict with nouveau +# They will probably soon be disabled from the stock kernel +# config, and this file will go away. +# See <http://nouveau.freedesktop.org/wiki/KernelModeSetting> +# +blacklist nvidiafb +blacklist rivafb diff --git a/testing/udev/udev.install b/testing/udev/udev.install new file mode 100644 index 000000000..58d1111fb --- /dev/null +++ b/testing/udev/udev.install @@ -0,0 +1,55 @@ +# arg 1: the new package version +# arg 2: the old package version + +post_upgrade() { + if [ "$(vercmp $2 181)" -lt 0 ]; then + echo "udev changes:" + if [ "$(vercmp $2 168)" -lt 0 ]; then + echo " * Kernel 2.6.32 or newer is now required." + echo " * OSS emulation modules are not loaded by default, add to rc.conf if needed." + echo " * Arch specific cd symlinks are now no longer created." + echo " * cd and net persistent rules will no longer be autogenerated," + echo " see <https://wiki.archlinux.org/index.php/Udev> for details." + echo " * Errors are now logged (possibly to the console) by default." + fi + if [ "$(vercmp $2 171)" -lt 0 ]; then + echo " * Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and" + echo " blacklisting in MODULES no longer works." + echo " See 'man modprobe.conf' for a replacement to blacklisting." + echo " To disable a module mod1 on the kernel command line, use" + echo " mod1.disable=1" + echo " or" + echo " modprobe.blacklist=mod1" + echo " * The following modules are no longer unconditionally loaded:" + echo " pcspkr irtty-sir analog lp ppdev ide-generic" + echo " Add them to MODULES in rc.conf if you need them." + fi + if [ "$(vercmp $2 172)" -lt 0 ]; then + echo " * Blacklisting of framebuffer devices has moved from /etc/modprobe.d to" + echo " /lib/modprobe.d. Any customizations shoud be done to the file in /etc, as it" + echo " takes precedence." + echo " * kbd and rtc devices are no longer world readable." + echo " * rtc is no longer in the audio group and fb devices are no longer in" + echo " the video group, as permissions and ownership of fb devices are controlled" + echo " by X." + fi + if [ "$(vercmp $2 174)" -lt 0 ]; then + echo " * We now use upstream rules for assigning devices to the 'disk', 'optical'," + echo " 'scanner' and 'video' groups. Beware of any changes." + echo " * We no longer create symlinks from /dev/<dev> to /dev/<dev>0." + echo " * For security reasons, we no longer add devices to the 'storage' group. Use" + echo " udisks and friends, or add custom rules to /etc/udev.d/rules/, if you want" + echo " this functionality back." + echo " * We no longer create the static nodes on install needed for an initrd-less" + echo " boot where devtmpfs is not mounted by the kernel, this only affects fresh" + echo " installs." + fi + if [ "$(vercmp $2 175)" -lt 0 ]; then + echo " * devtmpfs support is now a hard requirement. Users of the official Arch" + echo " kernels have this enabled." + fi + echo " * udev-compat has been removed, and should be uninstalled." + echo " * Framebuffers are no longer blacklisted by default." + echo " * binaries moved from /sbin to /usr/bin" + fi +} |