wok annotate udev/receipt @ rev 7874

udev: add system groups
author Christophe Lincoln <pankso@slitaz.org>
date Mon Jan 03 20:56:23 2011 +0100 (2011-01-03)
parents 31edb0bbba7b
children 9e1674525e2f
rev   line source
pankso@5 1 # SliTaz package receipt.
pankso@5 2
pankso@5 3 PACKAGE="udev"
slaxemulator@7682 4 VERSION="165"
pascal@1890 5 BUILD_WARNING="Install new udev package and rebuild hal"
pankso@210 6 CATEGORY="base-system"
pankso@5 7 SHORT_DESC="Udev creat automaticly right devices in /dev."
pankso@4119 8 DEPENDS="glibc-base util-linux-ng-blkid"
pankso@4119 9 BUILD_DEPENDS="$DEPENDS util-linux-ng-blkid-dev gperf pkg-config pciutils"
pankso@5 10 MAINTAINER="pankso@slitaz.org"
slaxemulator@7682 11 TARBALL="$PACKAGE-$VERSION.tar.bz2"
pankso@5 12 WEB_SITE="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html"
pankso@5 13 WGET_URL="http://www.us.kernel.org/pub/linux/utils/kernel/hotplug/$TARBALL"
pankso@5 14
pankso@5 15 # Rules to configure and make the package.
pankso@5 16 compile_rules()
pankso@5 17 {
pankso@3830 18 gzip -d /usr/share/misc/pci.ids.gz
pankso@5 19 cd $src
pascal@6113 20 grep -qs 'define u8' extras/*_id/*.c ||
pascal@6113 21 sed -i 's|#include <scsi/scsi.h>|#define u8 __u8\n&|' \
pascal@6113 22 extras/scsi_id/scsi_serial.c extras/ata_id/ata_id.c
pankso@1261 23 ./configure \
pankso@1261 24 --prefix=/usr \
pankso@1270 25 --exec-prefix="" \
pankso@1261 26 --sysconfdir=/etc \
pankso@3821 27 --libexecdir=/lib/udev \
pankso@3821 28 --with-rootlibdir=/lib \
pascal@1535 29 --enable-static \
pankso@4119 30 --disable-extras \
pankso@4573 31 --disable-introspection \
pascal@1535 32 $CONFIGURE_ARGS &&
pankso@3706 33 make &&
pankso@3830 34 make DESTDIR=$PWD/_pkg install &&
pankso@3830 35 gzip /usr/share/misc/pci.ids
pankso@5 36 }
pankso@5 37
pankso@5 38 # Rules to gen a SliTaz package suitable for Tazpkg.
pankso@5 39 genpkg_rules()
pankso@5 40 {
pankso@4341 41 mkdir -p $fs/lib/firmware $fs/etc/udev $fs/usr \
pankso@4341 42 $fs/dev/.udev
pankso@3821 43 for dir in sbin etc lib
pankso@3149 44 do
pankso@3149 45 cp -a $_pkg/$dir $fs
pascal@1878 46 done
pankso@789 47
rcx@3782 48 # Remove -dev files
rcx@3782 49 rm -rf $fs/lib/*.*a
rcx@3782 50 rm -rf $fs/lib/pkgconfig
rcx@3782 51
erjo@1988 52 # Copy rules files to udev conf dir
pankso@3821 53 mv -f $fs/lib/udev/rules.d $fs/etc/udev
pankso@5 54 cp stuff/udev.conf $fs/etc/udev
pankso@4832 55 cp stuff/*.rules $fs/etc/udev/rules.d
pankso@2273 56 # Fix permissions
pankso@3149 57 chmod +x $fs/lib/udev/*
pankso@3149 58 chown -R root.root $fs
pankso@5 59 }
pankso@2085 60
pankso@3149 61 pre_install()
pankso@2085 62 {
pankso@3149 63 # Remove old rules and libs
pankso@3149 64 rm -rf $1/lib/udev/rules.d
pankso@3149 65 rm -rf $1/lib/udev/vol_id
pankso@3149 66 rm -f $1/lib/libvolume_id*
pankso@3149 67 rm -f $1/lib/libudev.so.1.0
pankso@3149 68 rm -f $1/lib/libudev.so.2.0
pankso@2085 69 }
pascal@3174 70
pascal@3174 71 list_udev_group()
pascal@3174 72 {
pascal@3174 73 object=$1
pascal@3174 74 [ -n "$object" ] || object=GROUP
pascal@3174 75 grep $object /etc/udev/rules.d/* | \
pascal@3174 76 sed "s/.*GROUP=\"\\([a-zA-Z0-9]*\\)\".*/\1/" | sort | uniq
pascal@3174 77 }
pascal@3174 78
pascal@3174 79 post_install()
pascal@3174 80 {
pascal@3174 81 # Sanity check for udev+ldap boot
pascal@3174 82 list_udev_group GROUP | while read x ; do
pankso@7874 83 grep -q ^$x: $1/etc/group || chroot $1/ addgroup -S $x
pascal@3174 84 done
pascal@3174 85 list_udev_group OWNER | while read x ; do
pankso@3195 86 grep -q ^$x: $1/etc/passwd || chroot $1/ adduser -S -D -H $x
pascal@3174 87 done
pascal@3174 88 }