blob: e4c172746330f96aa1c1d5996070a7b67979d526 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
# $Id: PKGBUILD 126202 2011-06-02 14:49:12Z tomegun $
# Maintainer: Aaron Griffin <aaron@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Bächler <thomas@archlinux.org>
# Maintainer: Tom Gundersen <teg@jklm.no>
pkgbase="udev"
pkgname=('udev' 'udev-compat')
pkgver=171
pkgrel=6
arch=(i686 x86_64)
url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html"
license=('GPL')
groups=('base')
# older initscripts versions required start_udev
options=(!makeflags !libtool)
makedepends=('glibc' 'coreutils' 'util-linux' 'pciutils' 'libusb-compat' 'glib2' 'kernel26' 'gperf' 'libxslt' 'gobject-introspection')
source=(http://www.kernel.org/pub/linux/utils/kernel/hotplug/$pkgbase-$pkgver.tar.bz2
81-arch.rules
81-OSS_Emulation.rules
81-dvicoIR.rules
81-CD_DVD_symlinks.rules
81-SoundGraph_LCD.rules
static-audio-nodes-group.patch
static-nodes-permissions.patch
cdsymlinks.sh)
build() {
cd $srcdir/$pkgbase-$pkgver
# fix https://bugs.archlinux.org/task/24362 (will be in udev-172)
patch -Np1 -i ../static-audio-nodes-group.patch
patch -Np1 -i ../static-nodes-permissions.patch
./configure --sysconfdir=/etc --with-rootlibdir=/lib --libexecdir=/lib/udev\
--sbindir=/sbin --with-systemdsystemunitdir=/lib/systemd/system\
--disable-rule-generator
make
}
package_udev() {
pkgdesc="The userspace dev tools (udev)"
depends=('glibc' 'coreutils' 'util-linux' 'libusb-compat' 'glib2'
'module-init-tools>=3.11' 'pciutils')
install=udev.install
backup=(etc/udev/udev.conf
etc/modprobe.d/framebuffer_blacklist.conf)
conflicts=('pcmcia-cs' 'hotplug' 'initscripts<2009.07')
replaces=('devfsd')
cd $srcdir/$pkgbase-$pkgver
make DESTDIR=${pkgdir} install
# Install our rule for permissions and symlinks
install -D -m644 $srcdir/81-arch.rules $pkgdir/lib/udev/rules.d/81-arch.rules
# Install OSS Emulation rules
install -D -m644 $srcdir/81-OSS_Emulation.rules $pkgdir/lib/udev/rules.d/81-OSS_Emulation.rules
# Install dvicoIR rules
install -D -m644 $srcdir/81-dvicoIR.rules $pkgdir/lib/udev/rules.d/81-dvicoIR.rules
# Install CD/DVD symlink rules
install -D -m644 $srcdir/81-CD_DVD_symlinks.rules $pkgdir/lib/udev/rules.d/81-CD_DVD_symlinks.rules
# Install SoundGraph LCD rules
install -D -m644 $srcdir/81-SoundGraph_LCD.rules $pkgdir/lib/udev/rules.d/81-SoundGraph_LCD.rules
# install cdsymlinks.sh
install -D -m755 $srcdir/cdsymlinks.sh $pkgdir/lib/udev/cdsymlinks.sh
# create framebuffer blacklist
mkdir -p $pkgdir/etc/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/etc/modprobe.d/framebuffer_blacklist.conf
# create static devices in /lib/udev/devices/
mkdir ${pkgdir}/lib/udev/devices/pts
mkdir ${pkgdir}/lib/udev/devices/shm
mknod -m 0600 ${pkgdir}/lib/udev/devices/console c 5 1
mknod -m 0666 ${pkgdir}/lib/udev/devices/null c 1 3
mknod -m 0660 ${pkgdir}/lib/udev/devices/zero c 1 5
mknod -m 0666 ${pkgdir}/lib/udev/devices/kmsg c 1 11
ln -snf /proc/self/fd ${pkgdir}/lib/udev/devices/fd
ln -snf /proc/self/fd/0 ${pkgdir}/lib/udev/devices/stdin
ln -snf /proc/self/fd/1 ${pkgdir}/lib/udev/devices/stdout
ln -snf /proc/self/fd/2 ${pkgdir}/lib/udev/devices/stderr
ln -snf /proc/kcore ${pkgdir}/lib/udev/devices/core
# these static devices are created for convenience, to autoload the modules if necessary
# /dev/loop0
mknod -m 0660 ${pkgdir}/lib/udev/devices/loop0 b 7 0
chgrp disk ${pkgdir}/lib/udev/devices/loop0
# /dev/net/tun
mkdir ${pkgdir}/lib/udev/devices/net
mknod -m 0666 ${pkgdir}/lib/udev/devices/net/tun c 10 200
# /dev/fuse
mknod -m 0666 ${pkgdir}/lib/udev/devices/fuse c 10 229
# /dev/ppp
mknod -m 0600 ${pkgdir}/lib/udev/devices/ppp c 108 0
# 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=('')
cd $srcdir/$pkgbase-$pkgver
install -d -m755 ${pkgdir}/lib/${pkgbase}/rules.d
install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/rules/misc/30-kernel-compat.rules ${pkgdir}/lib/udev/rules.d/30-kernel-compat.rules
}
md5sums=('bdf4617284be2ecac11767437417e209'
'6ee44e3feb8e0f037947e7d4ca273f12'
'18170020347b181b155ff5a1a8a904b4'
'3a920447b11744ecb1b57f0de683db93'
'48845542d8250d6f2eddf07944f78014'
'5401def23fae53db3c94e39eb2debfb4'
'4f625aea95a5597afd8cdf189421f193'
'f9e50b8dfcd2215f5423ff9bc04ecf68'
'2e808ee78d237c478b57af2a68d43769')
|