From: Doug Goldstein Date: Thu, 18 Jan 2007 05:34:42 +0000 (+0000) Subject: Fixed bug #133743 and bug #161057 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=500221974916a696ade6e999bfb50a08bc935e7e;p=gentoo.git Fixed bug #133743 and bug #161057 Package-Manager: portage-2.1.2 --- diff --git a/sys-apps/hal/ChangeLog b/sys-apps/hal/ChangeLog index dfe746a9edea..ed673d0b535b 100644 --- a/sys-apps/hal/ChangeLog +++ b/sys-apps/hal/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-apps/hal # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.113 2007/01/05 04:41:12 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.114 2007/01/18 05:34:42 cardoe Exp $ + +*hal-0.5.7.1-r3 (18 Jan 2007) + + 18 Jan 2007; Doug Goldstein + +files/hal-0.5.7.1-hibernate-fix-r1.patch, -hal-0.5.7.1-r1.ebuild, + hal-0.5.7.1-r2.ebuild, +hal-0.5.7.1-r3.ebuild: + Fixed bug #133743 and bug #161057 05 Jan 2007; Diego Pettenò hal-0.5.5.1-r3.ebuild, hal-0.5.7-r3.ebuild, hal-0.5.7.1-r1.ebuild, hal-0.5.7.1-r2.ebuild: diff --git a/sys-apps/hal/files/digest-hal-0.5.7.1-r3 b/sys-apps/hal/files/digest-hal-0.5.7.1-r3 new file mode 100644 index 000000000000..3042516ecf0a --- /dev/null +++ b/sys-apps/hal/files/digest-hal-0.5.7.1-r3 @@ -0,0 +1,3 @@ +MD5 d7a7741808ba130f8aff3f5d3b5689e4 hal-0.5.7.1.tar.gz 1503156 +RMD160 2861818b29546bd3628b1bda3d41238cf644c644 hal-0.5.7.1.tar.gz 1503156 +SHA256 f15320c1ec3e5c89307fc0a6fbf75b6619de12c15ce8cc1a689e7bc3f2c0831b hal-0.5.7.1.tar.gz 1503156 diff --git a/sys-apps/hal/files/hal-0.5.7.1-hibernate-fix-r1.patch b/sys-apps/hal/files/hal-0.5.7.1-hibernate-fix-r1.patch new file mode 100644 index 000000000000..71a299b713d0 --- /dev/null +++ b/sys-apps/hal/files/hal-0.5.7.1-hibernate-fix-r1.patch @@ -0,0 +1,12 @@ +--- tools/hal-system-power-suspend 2006-02-19 00:00:55.000000000 +0100 ++++ tools/hal-system-power-suspend2 2006-09-23 11:22:42.000000000 +0200 +@@ -62,6 +62,9 @@ + elif [ -x "/usr/sbin/pmi" ] ; then + /usr/sbin/pmi action suspend force + RET=$? ++ elif [ -x "/usr/sbin/hibernate-ram" ] ; then ++ /usr/sbin/hibernate-ram ++ RET=$? + elif [ -w "/sys/power/state" ] ; then + # Use the raw kernel sysfs interface + echo "mem" > /sys/power/state diff --git a/sys-apps/hal/hal-0.5.7.1-r2.ebuild b/sys-apps/hal/hal-0.5.7.1-r2.ebuild index 5f0753cf60c0..512717f97bda 100644 --- a/sys-apps/hal/hal-0.5.7.1-r2.ebuild +++ b/sys-apps/hal/hal-0.5.7.1-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2007 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.1-r2.ebuild,v 1.4 2007/01/05 04:41:12 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/hal-0.5.7.1-r2.ebuild,v 1.5 2007/01/18 05:34:42 cardoe Exp $ inherit eutils linux-info @@ -130,10 +130,19 @@ src_unpack() { } src_compile() { + if [ -r "${ROOT}/usr/share/misc/pci.ids.gz" ] ; then + hwdata="${ROOT}/usr/share/misc/pci.ids.gz" + elif [ -r "${ROOT}/usr/share/misc/pci.ids" ] ; then + hwdata="${ROOT}/usr/share/misc/pci.ids" + else + die "pci.ids file not found. please file a bug @ bugs.gentoo.org" + fi + econf \ --with-doc-dir=/usr/share/doc/${PF} \ --with-os-type=gentoo \ --with-pid-file=/var/run/hald.pid \ + --with-data=${hwdata} --enable-hotplug-map \ $(use_enable debug verbose-mode) \ $(use_enable pcmcia pcmcia-support) \ diff --git a/sys-apps/hal/hal-0.5.7.1-r3.ebuild b/sys-apps/hal/hal-0.5.7.1-r3.ebuild new file mode 100644 index 000000000000..9ee23aa230bb --- /dev/null +++ b/sys-apps/hal/hal-0.5.7.1-r3.ebuild @@ -0,0 +1,204 @@ +# Copyright 1999-2007 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.1-r3.ebuild,v 1.1 2007/01/18 05:34:42 cardoe Exp $ + +inherit eutils linux-info + +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 ~sh ~sparc ~x86" +IUSE="acpi crypt debug doc dmi pcmcia selinux" + +RDEPEND=">=dev-libs/glib-2.6 + || ( >=dev-libs/dbus-glib-0.71 + ( =sys-apps/dbus-0.60 ) ) + >=sys-fs/udev-083 + >=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-base + virtual/eject + 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() { + get_version || eerror "Unable to calculate Linux Kernel version" + + kernel_is ge 2 6 15 || eerror "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}" + + # handle ignored volumes properly + epatch "${FILESDIR}"/${PN}-0.5.7.1-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 + + # detect hibernate-ram script as well + epatch "${FILESDIR}"/${PN}-0.5.7-hibernate.patch + + # dbus deprecated dbus_connection_disconnect + epatch "${FILESDIR}"/${PN}-0.5.7.1-dbus-close.patch + + # sr driver fix + epatch "${FILESDIR}"/${PN}-0.5.7.1-sr-driver.patch + + # hibernate sequence fix + epatch "${FILESDIR}"/${PN}-0.5.7.1-hibernate-fix-r1.patch +} + +src_compile() { + if [ -r "${ROOT}/usr/share/misc/pci.ids.gz" ] ; then + hwdata="${ROOT}/usr/share/misc/pci.ids.gz" + elif [ -r "${ROOT}/usr/share/misc/pci.ids" ] ; then + hwdata="${ROOT}/usr/share/misc/pci.ids" + else + die "pci.ids file not found. please file a bug @ bugs.gentoo.org" + fi + + econf \ + --with-doc-dir=/usr/share/doc/${PF} \ + --with-os-type=gentoo \ + --with-pid-file=/var/run/hald.pid \ + --with-data=${hwdata} + --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 + + elog "The HAL daemon needs to be running for certain applications to" + elog "work. Suggested is to add the init script to your start-up" + elog "scripts, this should be done like this :" + elog "\`rc-update add hald default\`" + echo + elog "Looking for automounting support? Add yourself to the plugdev group" +}