summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@gentoo.org>2006-05-08 18:46:26 +0000
committerSaleem Abdulrasool <compnerd@gentoo.org>2006-05-08 18:46:26 +0000
commitf8ef18dde7a22beae851368dcdc11589d3c1950f (patch)
tree86a08dc9483d6b90ac61c7e81af2395922e43ca9 /sys-apps/hal
parentadd dev-perl/TermReadKey to RDEPEND (diff)
downloadgentoo-2-f8ef18dde7a22beae851368dcdc11589d3c1950f.tar.gz
gentoo-2-f8ef18dde7a22beae851368dcdc11589d3c1950f.tar.bz2
gentoo-2-f8ef18dde7a22beae851368dcdc11589d3c1950f.zip
fix ups for udev. bugs #129811, #131376
(Portage version: 2.1_pre10-r3)
Diffstat (limited to 'sys-apps/hal')
-rw-r--r--sys-apps/hal/ChangeLog9
-rw-r--r--sys-apps/hal/files/digest-hal-0.5.5.1-r32
-rw-r--r--sys-apps/hal/files/digest-hal-0.5.7-r23
-rw-r--r--sys-apps/hal/files/hal-0.5.7-unclean-unmount-r1.patch9
-rw-r--r--sys-apps/hal/hal-0.5.7-r2.ebuild182
5 files changed, 204 insertions, 1 deletions
diff --git a/sys-apps/hal/ChangeLog b/sys-apps/hal/ChangeLog
index 18c0fb4d88d5..8a3d269a62ee 100644
--- a/sys-apps/hal/ChangeLog
+++ b/sys-apps/hal/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-apps/hal
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.86 2006/05/01 10:11:37 steev Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.87 2006/05/08 18:46:26 compnerd Exp $
+
+*hal-0.5.7-r2 (08 May 2006)
+
+ 08 May 2006; Saleem Abdulrasool <compnerd@gentoo.org>
+ +files/hal-0.5.7-unclean-unmount-r1.patch, +hal-0.5.7-r2.ebuild:
+ Change the install location for hal-unmount.sh, update the udev rules, and
+ change notifications to not die. Bug #131376, 129811.
01 May 2006; Steev Klimaszewski <steev@gentoo.org> hal-0.4.7-r2.ebuild,
hal-0.4.8.ebuild, hal-0.5.5.1-r3.ebuild, hal-0.5.7.ebuild,
diff --git a/sys-apps/hal/files/digest-hal-0.5.5.1-r3 b/sys-apps/hal/files/digest-hal-0.5.5.1-r3
index 9dfb57f4441c..368d081d356e 100644
--- a/sys-apps/hal/files/digest-hal-0.5.5.1-r3
+++ b/sys-apps/hal/files/digest-hal-0.5.5.1-r3
@@ -1 +1,3 @@
MD5 2abd81ed3f5a37789f4fbda2f6a61270 hal-0.5.5.1.tar.gz 1517882
+RMD160 fad4ec6a23d8dc26bb20b659e4f9ff86e7bc62d0 hal-0.5.5.1.tar.gz 1517882
+SHA256 e89ab31aede3b689ef5cd54a17a3db1a2e7e868bd2d0b4b8f53a9b259723b8ee hal-0.5.5.1.tar.gz 1517882
diff --git a/sys-apps/hal/files/digest-hal-0.5.7-r2 b/sys-apps/hal/files/digest-hal-0.5.7-r2
new file mode 100644
index 000000000000..5c84accce85a
--- /dev/null
+++ b/sys-apps/hal/files/digest-hal-0.5.7-r2
@@ -0,0 +1,3 @@
+MD5 4163afb8285db64e00e7b1392b401d92 hal-0.5.7.tar.gz 1528632
+RMD160 342b00bea138ddf9f0f75e769612373bcf935d43 hal-0.5.7.tar.gz 1528632
+SHA256 63c78e9b9c8308914372f9a762b02fa057bca2c6a1c7478ab595ba0fa92781d5 hal-0.5.7.tar.gz 1528632
diff --git a/sys-apps/hal/files/hal-0.5.7-unclean-unmount-r1.patch b/sys-apps/hal/files/hal-0.5.7-unclean-unmount-r1.patch
new file mode 100644
index 000000000000..4c3254ff9d4e
--- /dev/null
+++ b/sys-apps/hal/files/hal-0.5.7-unclean-unmount-r1.patch
@@ -0,0 +1,9 @@
+--- tools/linux/90-hal.rules 2006-01-21 14:39:58.000000000 -0500
++++ tools/linux/90-hal.rules.new 2006-03-18 21:14:31.000000000 -0500
+@@ -1,2 +1,6 @@
+ # pass all events to the HAL daemon
+ RUN+="socket:/org/freedesktop/hal/udev_event"
++
++# unmount block devices when they are removed
++SUBSYSTEM=="block",ACTION=="remove", RUN+="hal_unmount"
++
diff --git a/sys-apps/hal/hal-0.5.7-r2.ebuild b/sys-apps/hal/hal-0.5.7-r2.ebuild
new file mode 100644
index 000000000000..13440ecb2d00
--- /dev/null
+++ b/sys-apps/hal/hal-0.5.7-r2.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/hal-0.5.7-r2.ebuild,v 1.1 2006/05/08 18:46:26 compnerd Exp $
+
+inherit eutils linux-info debug
+
+DESCRIPTION="Hardware Abstraction Layer"
+HOMEPAGE="http://www.freedesktop.org/Software/hal"
+SRC_URI="http://freedesktop.org/~david/dist/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 AFL-2.0 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="acpi crypt debug doc dmi pcmcia selinux"
+
+RDEPEND=">=dev-libs/glib-2.6
+ >=sys-apps/dbus-0.60
+ >=sys-fs/udev-078
+ >=sys-apps/util-linux-2.12r
+ || ( >=sys-kernel/linux-headers-2.6 >=sys-kernel/mips-headers-2.6 )
+ dev-libs/expat
+ sys-libs/libcap
+ sys-apps/pciutils
+ dev-libs/libusb
+ sys-apps/hotplug
+ dmi? ( >=sys-apps/dmidecode-2.7 )
+ crypt? ( >=sys-fs/cryptsetup-luks-1.0.1 )
+ selinux? ( sys-libs/libselinux )"
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ >=dev-util/intltool-0.29
+ doc? ( app-doc/doxygen app-text/docbook-sgml-utils )"
+
+## HAL Daemon drops privledges so we need group access to read disks
+HALDAEMON_GROUPS="haldaemon,plugdev,disk,cdrom,cdrw,floppy,usb"
+
+function notify_uevent() {
+ eerror
+ eerror "You must enable Kernel Userspace Events in your kernel."
+ eerror "This can be set under 'General Setup'. It is marked as"
+ eerror "CONFIG_KOBJECT_UEVENT in the config file."
+ eerror
+ ebeep 5
+}
+
+function notify_uevent_2_6_16() {
+ eerror
+ eerror "You must enable Kernel Userspace Events in your kernel."
+ eerror "For this you need to enable 'Hotplug' under 'General Setup' and"
+ eerror "basic networking. They are marked CONFIG_HOTPLUG and CONFIG_NET"
+ eerror "in the config file."
+ eerror
+ ebeep 5
+}
+
+function notify_procfs() {
+ eerror
+ eerror "You must enable the proc filesystem in your kernel."
+ eerror "For this you need to enable '/proc file system support' under"
+ eerror "'Pseudo filesystems' in 'File systems'. It is marked"
+ eerror "CONFIG_PROC_FS in the config file."
+ eerror
+ ebeep 5
+}
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ kernel_is ge 2 6 15 || die "HAL requires a kernel version 2.6.15 or newer"
+
+ if kernel_is lt 2 6 16 ; then
+ linux_chkconfig_present KOBJECT_UEVENT || notify_uevent
+ else
+ (linux_chkconfig_present HOTPLUG && linux_chkconfig_present NET) \
+ || notify_uevent_2_6_16
+ fi
+
+ if use acpi ; then
+ linux_chkconfig_present PROC_FS || notify_procfs
+ fi
+
+ if [ -d ${ROOT}/etc/hal/device.d ]; then
+ eerror "HAL 0.5.x will not run with the HAL 0.4.x series of"
+ eerror "/etc/hal/device.d/ so please remove this directory"
+ eerror "with rm -rf /etc/hal/device.d/ and then re-emerge."
+ eerror "This is due to configuration protection of /etc/"
+ die "remove /etc/hal/device.d/"
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # sony screen brightness patch
+# epatch "${FILESDIR}"/${PN}-0.5.7-sony-brightness.patch
+
+ # handle ignored volumes properly
+ epatch "${FILESDIR}"/${PN}-0.5.7-ignored-volumes.patch
+
+ # Fix bash in hald scripts
+ epatch "${FILESDIR}"/${PN}-0.5.7-hald-scripts.patch
+
+ # probe partition table
+ epatch "${FILESDIR}"/${PN}-0.5.7-part-table.patch
+
+ # fix pmu support crash
+ epatch "${FILESDIR}"/${PN}-0.5.7-pmu-fix.patch
+
+ # unclean unmount
+ epatch "${FILESDIR}"/${PN}-0.5.7-unclean-unmount-r1.patch
+
+ # allow plugdev group people to mount
+ epatch "${FILESDIR}"/${PN}-0.5.7-plugdev-allow-send.patch
+
+ # rescan devices on resume
+ epatch "${FILESDIR}"/${PN}-0.5.7-rescan-on-resume.patch
+}
+
+src_compile() {
+ econf \
+ --with-doc-dir=/usr/share/doc/${PF} \
+ --with-os-type=gentoo \
+ --with-pid-file=/var/run/hald.pid \
+ --enable-hotplug-map \
+ $(use_enable debug verbose-mode) \
+ $(use_enable pcmcia pcmcia-support) \
+ $(use_enable acpi acpi-proc) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable doc doxygen-docs) \
+ $(use_enable selinux) \
+ || die "configure failed"
+
+ emake || die "make failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die
+ dodoc AUTHORS ChangeLog NEWS README
+
+ # remove dep on gnome-python
+ mv "${D}"/usr/bin/hal-device-manager "${D}"/usr/share/hal/device-manager/
+
+ # hal umount for unclean unmounts
+ exeinto /lib/udev/
+ newexe "${FILESDIR}"/hal-unmount.dev hal_unmount
+
+ # initscript
+ newinitd "${FILESDIR}"/0.5-hald.rc hald
+
+ # Script to unmount devices if they are yanked out (from upstream)
+ exeinto /etc/dev.d/default
+ doexe "${FILESDIR}"/hal-unmount.dev
+
+ # We now create and keep /media here as both gnome-mount and pmount
+ # use these directories, to avoid collision.
+ dodir /media
+ keepdir /media
+}
+
+pkg_postinst() {
+ # Despite what people keep changing this location. Either one works.. it doesn't matter
+ # http://dev.gentoo.org/~plasmaroo/devmanual/ebuild-writing/functions/
+
+ # Create groups for hotplugging and HAL
+ enewgroup haldaemon || die "Problem adding haldaemon group"
+ enewgroup plugdev || die "Problem adding plugdev group"
+
+ # HAL drops priviledges by default now ...
+ # ... so we must make sure it can read disk/cdrom info (ie. be in ${HALDAEMON_GROUPS} groups)
+ enewuser haldaemon -1 "-1" /dev/null ${HALDAEMON_GROUPS} || die "Problem adding haldaemon user"
+
+ # Make sure that the haldaemon user is in the ${HALDAEMON_GROUPS}
+ # If users have a problem with this, let them file a bug
+ usermod -G ${HALDAEMON_GROUPS} haldaemon
+
+ einfo "The HAL daemon needs to be running for certain applications to"
+ einfo "work. Suggested is to add the init script to your start-up"
+ einfo "scripts, this should be done like this :"
+ einfo "\`rc-update add hald default\`"
+}