Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Other Things Gentoo
  • Search

ivman stopped working

Still need help with Gentoo, and your question doesn't fit in the above forums? Here is your last bastion of hope.
Post Reply
Advanced search
23 posts • Page 1 of 1
Author
Message
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

ivman stopped working

  • Quote

Post by kos » Tue Jan 27, 2009 11:46 pm

Hi.

My ivman suddenly stopped working with no apparent reason. It shows no activity if I run it with -d --nofork and insert USB drive. However it detects and mounts the drive if I run it after inserting the device. Dmesg shows that device is detected, lshal lists it. Running ivman as system/user, restarting hal and dbus gives no positive results. Looks like hal doesn't send appropriate events, but how can I check it?
/KoS
Top
ultrabug
Retired Dev
Retired Dev
User avatar
Posts: 698
Joined: Mon Jan 24, 2005 9:47 am
Location: Paris
Contact:
Contact ultrabug
Website

  • Quote

Post by ultrabug » Wed Feb 04, 2009 11:24 am

Got the exact same problem. Did you find a solution ?
Top
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

  • Quote

Post by kos » Wed Feb 04, 2009 10:29 pm

Nope.
"dbus-monitor --system" shows some activity when I add/remove devices, as does "hald --verbose=yes --damon=no".
Both system and user ivman instances stay silent..
Tried to rebuild the whole system - no luck.
/KoS
Top
ultrabug
Retired Dev
Retired Dev
User avatar
Posts: 698
Joined: Mon Jan 24, 2005 9:47 am
Location: Paris
Contact:
Contact ultrabug
Website

  • Quote

Post by ultrabug » Thu Feb 05, 2009 8:32 am

Yeah same.. so I went into writing udev rules combined with autofs instead. Still odd that ivman stopped like this.
Top
Tariella
Guru
Guru
Posts: 392
Joined: Sat Dec 10, 2005 10:31 am
Location: Europe/Austria

  • Quote

Post by Tariella » Thu Feb 05, 2009 10:19 am

Ivman is discontinued afaik.
Probably a new version of dbus and/or hal did break something.

There is a kind of replacement called hal-evt.
Anyone checked this out?

I'm working with udev-rules and pmount command atm, but it would be better if it could be unmounted manually (won't work because udev makes no fstab entries - so no umount for users).
Top
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

  • Quote

Post by kos » Thu Feb 05, 2009 10:26 pm

OK, now we need hal-evt ebuild :)
/KoS
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Fri Feb 06, 2009 6:54 pm

kos wrote:OK, now we need hal-evt ebuild :)
I'll write an ebuild for hal-evt and boolstuff (dependancy) and post back soon.
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Fri Feb 06, 2009 7:18 pm

That was a lot easier than I expected. The ebuilds were simple to write. I'm not exactly sure on the usage for halevt yet however. Once we get things figured out and see that it is working, I'll submit them to bugzilla.

dev-libs/boolstuff/boolstuff-0.1.12.ebuild

Code: Select all

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

DESCRIPTION="A C++ library that supports a few operations on boolean expression binary trees."
HOMEPAGE="http://perso.b2b2c.ca/sarrazip/dev/boolstuff.html"
SRC_URI="http://perso.b2b2c.ca/sarrazip/dev/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE=""

DEPEND=""
RDEPEND=""


src_unpack() {
    unpack ${P}.tar.gz
}



src_compile() {
    einfo "Running configure"
    econf || die "econf failed"

    einfo "Building ${P}"
    emake || die "emake failed"
}

src_install () {
    einfo "Running make install"
    emake DESTDIR="${D}" install || die "install failed"
}


sys-apps/halevt/halevt-0.1.4.ebuild

Code: Select all

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

DESCRIPTION="A daemon built on ivman that executes arbitrary commands on HAL events"
HOMEPAGE="http://www.environnement.ens.fr/perso/dumas/halevt.html"
SRC_URI="http://www.environnement.ens.fr/perso/dumas/halevt-download/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE=""

DEPEND=">=sys-apps/hal-0.5.11-r1
        >=sys-apps/dbus-1.2.3-r1
        >=dev-libs/dbus-glib-0.76
        >=dev-libs/glib-2.16.5
        >=dev-libs/boolstuff-0.1.12"
RDEPEND=""


src_unpack() {
    unpack ${P}.tar.gz
}



src_compile() {
    einfo "Running configure"
    econf || die "econf failed"

    einfo "Building ${P}"
    emake || die "emake failed"
}

src_install () {
    einfo "Running make install"
    emake DESTDIR="${D}" install || die "install failed"
}

Last edited by mikegpitt on Sat Feb 07, 2009 5:06 pm, edited 1 time in total.
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Fri Feb 06, 2009 7:58 pm

I submitted the ebuilds to bugzilla:
http://bugs.gentoo.org/show_bug.cgi?id=257933

So far things are working great. You can launch halevt with the -f option to see what it actually happening. So far it automounts my usb sticks and cdrom witout any additional configuration!

Code: Select all

halevt -f
One trick... you need to remove the entries in your /etc/fstab for halevt to work properly... for instance if you have an entry for /dev/cdrom halevt will throw an error that permission to mount is denied.
Top
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

  • Quote

Post by kos » Sat Feb 07, 2009 7:45 am

Thank you, works fine so far. Please add ~amd64 to the keywords :)
/KoS
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Sat Feb 07, 2009 5:07 pm

kos wrote:Thank you, works fine so far. Please add ~amd64 to the keywords :)
Done... see above.
Top
smlgbl
Guru
Guru
User avatar
Posts: 305
Joined: Thu Feb 10, 2005 11:38 am
Contact:
Contact smlgbl
Website

  • Quote

Post by smlgbl » Fri Feb 13, 2009 6:34 pm

Wow, finally there is a solution for this...and it works exactly how I had ivman configured.
Is there an option to make it run in like "system-mode", so that it is started even without a user being logged in? Kind of the way ivman was intended when run without a user instance (at least according to the man page).
Thanks for this work!
samuel.
'Do not let one girding on boast about himself like one unfastening'
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Fri Feb 13, 2009 6:46 pm

smlgbl wrote:Wow, finally there is a solution for this...and it works exactly how I had ivman configured.
Is there an option to make it run in like "system-mode", so that it is started even without a user being logged in? Kind of the way ivman was intended when run without a user instance (at least according to the man page).
Thanks for this work!
I guess it's possible to create an init script to start halevt as root... the only issue I see with this is that some of the mounted devices may not be user accessible. I always had that problem with ivman, so I started it as my user instead of root.

I can add the init script to the ebuild, to make it more similar to how gentoo configures ivman. I will also have it create a user/group halevt, since it seems like from the man page it will sometimes want to use those defaults.

Will post it later when I get a chance to edit it...

I should also probably start a new thread for this in unsupported software, since the halevt ebuild is kind of hijacking this thread....
Top
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

  • Quote

Post by kos » Fri Feb 13, 2009 10:43 pm

I guess you can start it from an init script specifying -g <your gid> -u <your uid>

BTW it's very easy to hack ivman-launch script to work with halevt, I use it to start/stop halevt together with my X session.
/KoS
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Fri Feb 20, 2009 8:43 pm

Sorry I haven't gotten around to posting the new ebuild... I started working on it last week, but ran into a glitch, and put it on the back burner.

Anyway, I'm having an issue with halevt and autorunning DVD's. For some reason my autorun command executes no matter what type of disc is inserted. Is this a bug with halevt or my rule? See my simple config below:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
     <halevt:Configuration version="0.1" xmlns:halevt="http://www.environnement.ens.fr/perso/dumas/halevt.html">

     <halevt:Device match="hal.volume.disc.is_videodvd">
            <halevt:Insertion exec="/usr/bin/xine --auto-play --auto-scan dvd"/>
     </halevt:Device>

</halevt:Configuration>

EDIT2: The problem wasn't halevt but my terrible config. I did a lot of testing and looking though the hal event documentation and I found solutions to the issues... I can post more details later when I'm in front of my laptop.


EDIT: Either I'm greatly messing up my configuration, or halevt isn't working properly. I was just writing another rule to pop up a notification if a usb stick is inserted into the machine. This also gets executed when a CD-ROM is inserted. Here's the rule:

Code: Select all

<halevt:Device match="hal.block.device &amp; hal.block.is_volume = true" value="usb">
             <halevt:Property name="hal.volume.is_mounted">
                <halevt:Action value="true" exec="xmessage 'USB Storage: $hal.volume.mount_point$ -- $hal.volume.label$'"/>
             </halevt:Property>
          </halevt:Device>
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Wed Feb 25, 2009 9:32 pm

As a follow up to my last post, here are some useful things I configured for halevt. There are probably better ways to do these things, but these seem to work. Most of these will just execute a dummy command with xmessage to list some useful data after the event occurs.

file: ~/.halevt/HalevtConfigActions.xml

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
     <halevt:Configuration version="0.1" xmlns:halevt="http://www.environnement.ens.fr/perso/dumas/halevt.html">

        <!--
             Useful links:
             http://people.freedesktop.org/~david/hal-spec/hal-spec.html
             http://www.environnement.ens.fr/perso/dumas/halevt-doc/halevt.html
        -->


     <!-- DVD autoplay -->

     <halevt:Device match="hal.volume.disc.is_videodvd = true">
                <halevt:Insertion exec="xine --auto-play --auto-scan dvd"/>
     </halevt:Device>


     <!-- CD-ROM insertion -->

     <halevt:Device match="hal.volume.disc.is_videodvd = false">
                <halevt:Insertion exec="xmessage 'Inserted CD-ROM: $hal.volume.mount_point$ - $hal.volume.label$'"/>
     </halevt:Device>


     <!-- CD-ROM mounted -->

     <halevt:Device match="hal.volume.disc.is_videodvd = false">
             <halevt:Property name="hal.volume.is_mounted">
                <halevt:Action value="true" exec="xmessage 'CD-ROM Mounted: $hal.volume.mount_point$ - $hal.volume.label$'"/>
             </halevt:Property>
     </halevt:Device>


          <!-- CDROM Unmount -->

     <halevt:Device match="hal.volume.disc.is_videodvd = false">
             <halevt:Property name="hal.volume.is_mounted">
                <halevt:Action value="false" exec="xmessage 'CD-ROM Unmounted: $hal.volume.mount_point$ - $hal.volume.label$'"/>
             </halevt:Property>
     </halevt:Device>


     <!-- USB drive inserted -->

     <halevt:Device match="hal.storage.bus = usb">
                <halevt:Insertion exec="xmessage 'USB Storage: $hal.volume.mount_point$ - $hal.volume.label$'"/>
     </halevt:Device>



     <!-- USB drive mounted -->

     <halevt:Device match="hal.volume.is_disc = false">
             <halevt:Property name="hal.volume.is_mounted">
                <halevt:Action value="true" exec="xmessage 'USB Storage mounted: $hal.volume.mount_point$ - $hal.volume.label$'"/>
             </halevt:Property>
     </halevt:Device>



          <!-- USB Unmount -->

     <halevt:Device match="hal.volume.is_disc = false">
             <halevt:Property name="hal.volume.is_mounted">
                <halevt:Action value="false" exec="xmessage 'USB Storage Unmounted: $hal.volume.mount_point$ - $hal.volume.label$'"/>
             </halevt:Property>
     </halevt:Device>


</halevt:Configuration>


Top
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

  • Quote

Post by kos » Fri Feb 27, 2009 7:04 am

Here are mine configs. Work quite well.

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE halevt:Configuration [

<!-- this entity corresponds with mountable devices, which have 
 volume.policy.should_mount true or don't have 
 volume.policy.should_mount false and are block devices hotpluggable or
 removable.
-->
<!ENTITY MOUNTABLE "hal.block.device &amp; hal.block.is_volume = true &amp; (hal.volume.policy.should_mount = true | ((! hal.volume.policy.should_mount = false) &amp; (hal.block.storage_device.hal.storage.policy.should_mount = true | ((! hal.block.storage_device.hal.storage.policy.should_mount = false)  &amp; (hal.block.storage_device.hal.storage.hotpluggable = true | hal.block.storage_device.hal.storage.removable = true)))))">
]>
<halevt:Configuration version="0.1" xmlns:halevt="http://www.environnement.ens.fr/perso/dumas/halevt.html">

	<!-- audio CD -->
	<halevt:Device match="hal.block.is_volume &amp; hal.volume.disc.type=cd_rom &amp; hal.volume.disc.has_audio=true &amp; hal.volume.disc.has_data=false">
		<halevt:Insertion exec="grip"/>
	</halevt:Device>

	<!-- blank CD/DVD -->
	<halevt:Device match="hal.block.is_volume &amp; hal.volume.is_disc=true &amp; hal.volume.disc.is_blank=true">
		<halevt:Insertion exec="k3b"/>
	</halevt:Device>
	
	<!--
	This rule matches removable devices which have volume.policy.should_mount true
	or don't have volume.policy.should_mount false.
	Upon insertion, they are mounted and recorded by halevt-mount. 
	-m 002 sets the umask of mount to 002 when pmount is used system-wide
	to mount the device. This allows regular users to read the device.
	!-->
	<halevt:Device match="&MOUNTABLE; &amp; (!hal.volume.is_disc | hal.volume.is_disc=false)">
		<halevt:Insertion exec="halevt-mount -u $hal.udi$ -o codepage=866,iocharset=koi8-r -m 002"/>
	</halevt:Device>
	<halevt:Device match="&MOUNTABLE; &amp; hal.volume.is_disc=true">
		<halevt:Insertion exec="halevt-mount -u $hal.udi$ -o iocharset=koi8-r -m 002"/>
	</halevt:Device>

	<!--
	When a device get a mount point, it is passed to halevt-mount which can 
	record it. The property that changes is volume.is_mounted, and the action is
	executed when the value of volume.is_mounted becomes true.
	!-->
	<halevt:Device match="hal.block.device &amp; hal.block.is_volume = true &amp; hal.volume.mount_point">
		<halevt:Property name="hal.volume.is_mounted">
			<halevt:Action value="true" exec="halevt-mount -s"/>
		</halevt:Property>
	</halevt:Device>

	<!--
	When a device is unmounted, it is recorded by halevt-mount.
	!-->
	<halevt:Device match="hal.block.device &amp; hal.block.is_volume = true">
		<halevt:Property name="hal.volume.is_mounted">
			<halevt:Action value="false" exec="halevt-mount -s"/>
		</halevt:Property>
	</halevt:Device>

	<!--
	When a device is removed, it is recorded by halevt-mount.
	Note that at that point the device is already out of hal, so we use
	* which matches any device in the match attribute, and only pass the
	udi to the command.
	!-->
	<halevt:Device match="hal.*">
		<halevt:Removal exec="halevt-umount -u $hal.udi$; halevt-umount -s"/>
	</halevt:Device>


	<!-- 
	Example of a use of OnInit. At startup all the devices are matched and the exec
	comand is run for those that match. Here we match all the removable devices
	that aren't already mounted and mount and register them.
	!-->

	<halevt:Device match="&MOUNTABLE; &amp; (!hal.volume.is_disc | hal.volume.is_disc=false)">
		<halevt:OnInit exec="halevt-mount -u $hal.udi$ -o codepage=866,iocharset=koi8-r -m 002"/>
	</halevt:Device>
	<halevt:Device match="&MOUNTABLE; &amp; hal.volume.is_disc=true">
		<halevt:OnInit exec="halevt-mount -u $hal.udi$ -o iocharset=koi8-r -m 002"/>
	</halevt:Device>
</halevt:Configuration>
Notifications:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE halevt:Configuration [

<!-- this entity corresponds with mountable devices, which have 
 volume.policy.should_mount true or don't have 
 volume.policy.should_mount false and are block devices hotpluggable or
 removable.
-->
<!ENTITY MOUNTABLE "hal.block.device &amp; hal.block.is_volume = true &amp; (hal.volume.policy.should_mount = true | ((! hal.volume.policy.should_mount = false) &amp; (hal.block.storage_device.hal.storage.policy.should_mount = true | ((! hal.block.storage_device.hal.storage.policy.should_mount = false)  &amp; (hal.block.storage_device.hal.storage.hotpluggable = true | hal.block.storage_device.hal.storage.removable = true)))))">
]>
<halevt:Configuration version="0.1" xmlns:halevt="http://www.environnement.ens.fr/perso/dumas/halevt.html">

	<halevt:Device match="hal.info.category=storage">
		<halevt:Insertion exec="notify-send -i &quot;/usr/kde/3.5/share/icons/crystalsvg/48x48/devices/usbpendrive_unmount.png&quot; &quot;Storage device detected&quot; &quot;$hal.info.product$&quot;"/>
		<halevt:Removal exec="notify-send -i &quot;/usr/kde/3.5/share/icons/crystalsvg/48x48/devices/usbpendrive_unmount.png&quot; &quot;Storage device removed&quot; &quot;$hal.info.product$&quot;"/>
	</halevt:Device>
	<halevt:Device match="hal.linux.subsystem=usb">
		<halevt:Insertion exec="notify-send -i &quot;/home/kos/.kde3.5/share/icons/Noia KDE 0.95/48x48/apps/usb.png&quot; &quot;USB device detected&quot; &quot;$hal.info.product$&quot;"/>
		<halevt:Removal exec="notify-send -i &quot;/home/kos/.kde3.5/share/icons/Noia KDE 0.95/48x48/apps/usb.png&quot; &quot;USB device removed&quot; &quot;$hal.info.product$&quot;"/>
	</halevt:Device>
	
	<!-- audio CD -->
	<halevt:Device match="hal.block.is_volume &amp; hal.volume.disc.type=cd_rom &amp; hal.volume.disc.has_audio=true &amp; hal.volume.disc.has_data=false">
		<halevt:Insertion exec="notify-send -i &quot;/usr/share/icons/oxygen/48x48/devices/media-optical-audio.png&quot; &quot;Audio CD inserted&quot; &quot;$hal.volume.label$&quot;"/>
	</halevt:Device>

	<!-- blank CD/DVD -->
	<halevt:Device match="hal.block.is_volume &amp; hal.volume.is_disc=true &amp; hal.volume.disc.is_blank=true">
		<halevt:Insertion exec="notify-send -i &quot;/usr/share/icons/oxygen/48x48/devices/media-optical-recordable.png&quot; &quot;Blank recordable disc inserted&quot; &quot;$hal.block.storage_device$&quot;"/>
	</halevt:Device>
	
	<halevt:Device match="&MOUNTABLE;">
		<halevt:Insertion exec="notify-send -i &quot;/usr/share/icons/oxygen/48x48/devices/drive-removable-media-usb.png&quot; &quot;Mountable device inserted&quot; &quot;$hal.info.product$&quot;"/>
		<halevt:Removal exec="notify-send -i &quot;/usr/share/icons/oxygen/48x48/devices/drive-removable-media-usb.png&quot; &quot;Mountable device removed&quot; &quot;$hal.info.product$&quot;"/>
	</halevt:Device>

	<!-- open mounted device -->
	<halevt:Device match="&MOUNTABLE;">
		<halevt:Property name="hal.volume.is_mounted">
			<halevt:Action value="true" exec="/home/kos/bin/open_mounted_device.sh &quot;$hal.volume.mount_point$&quot;"/>
		</halevt:Property>
	</halevt:Device>
</halevt:Configuration>
open_mounted_device.sh starts a file manager.
/KoS
Top
lyallp
Veteran
Veteran
User avatar
Posts: 1655
Joined: Thu Jul 15, 2004 12:07 am
Location: Adelaide/Australia
Contact:
Contact lyallp
Website

  • Quote

Post by lyallp » Sat Apr 11, 2009 4:17 am

Is halevt the way to go? I might as well unmerge ivman as it's useless in it's current form.

I gather it's not in portage yet.

Is there any other alternative that is available in portage now?
...Lyall
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Mon Apr 13, 2009 2:30 pm

lyallp wrote:Is halevt the way to go? I might as well unmerge ivman as it's useless in it's current form.

I gather it's not in portage yet.

Is there any other alternative that is available in portage now?
I stopped using ivman and have switched over to halevt for a few months now. Overall I've had less problems with halevt than I had with ivman in the past.

You are correct halevt isn't in portage yet, but the ebuild is in bugzilla.
Top
yank74
n00b
n00b
Posts: 22
Joined: Tue Nov 08, 2005 11:02 am

  • Quote

Post by yank74 » Fri Apr 24, 2009 2:55 pm

Hi

halevt seems to work fine for me but i don't understand how to set the mounted directory writable by the world???

here is how i run it (in the init file) : /usr/bin/halevt -u root -g plugdev -c /etc/halevt/halevt.xml

i use the default config file and my user is in the plugdev group.

Issue is a directory writable by root and its group root :(

$ls -alp /media
$drwxrwxr-x 6 root root 16384 janv. 1 1970 disk/

Thanks
Top
KrissN
n00b
n00b
Posts: 54
Joined: Sat Sep 25, 2004 9:45 am
Location: Kedzierzyn-Kozle@Poland

  • Quote

Post by KrissN » Wed Apr 29, 2009 8:42 pm

I also got halevt working nicely for me with KDE 4.2.

In case someone is interested, here's my config (simple auto-mounting + cdrom eject button handling):

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE halevt:Configuration [
	  
	  <!-- this entity corresponds with mountable devices, which have 
	       volume.policy.should_mount true or don't have 
	       volume.policy.should_mount false and are block devices hotpluggable or
	       removable.
	    -->
	  <!ENTITY MOUNTABLE "hal.block.device &amp; hal.block.is_volume = true &amp; (hal.volume.policy.should_mount = true | ((! hal.volume.policy.should_mount = false) &amp; (hal.block.storage_device.hal.storage.policy.should_mount = true | ((! hal.block.storage_device.hal.storage.policy.should_mount = false)  &amp; (hal.block.storage_device.hal.storage.hotpluggable = true | hal.block.storage_device.hal.storage.removable = true)))))">
	  ]>
<halevt:Configuration version="0.1" xmlns:halevt="http://www.environnement.ens.fr/perso/dumas/halevt.html">
  
  <!--
     Remember to use &amp; and &quot; for & and " in xml attributes.
						 
     In a match attribute, hal.* is special since it matches any device.
     In a match attribute property it is possible to refer to other
     device properties. For example 
     hal.block.storage_device.hal.storage.policy.should_mount
     refers to the storage.policy.should_mount property of the block.storage_device
     device associated with a given device.
     
     In an exec attribute, $hal.udi$ is special since it is replaced by
     the device udi. $hal.some.property$ is replaced by the value
     of the property some.property.
     !-->
     
  <!-- Removable devices support !-->
  
  <!--
     This rule matches removable devices which have volume.policy.should_mount true
     or don't have volume.policy.should_mount false.
     Upon insertion, they are mounted using KDE4's Solid framework
     !-->
  <halevt:Device match="&MOUNTABLE;">
    <halevt:Insertion exec="solid-hardware mount $hal.udi$"/>
  </halevt:Device>
  
  
  <!-- CD-ROM ejection support !-->
  
  <!--
     This rule matches cdrom drives. When the eject button on the cdrom is pressed,
     the disc is ejected using KDE4's Solid framework.
     !-->
  <halevt:Device match="hal.storage.drive_type = cdrom">
    <halevt:Condition name="EjectPressed" exec="solid-hardware eject $hal.udi$"/>
  </halevt:Device>
  
     
</halevt:Configuration>
Halevt can be added to the list of automatically started applications using System Settings to make it start as user during KDE startup.

This script needs kde-base/solid-hardware to be installed.
We try making things idiot-proof and someone will just go and build a better idiot.
Top
mikegpitt
Advocate
Advocate
User avatar
Posts: 3224
Joined: Sat May 22, 2004 6:49 pm

  • Quote

Post by mikegpitt » Mon Jun 01, 2009 7:40 pm

I wanted to let you all know that halevt is now in the portage tree!
Top
kos
n00b
n00b
Posts: 74
Joined: Wed May 28, 2003 2:16 pm
Location: Mountain View, CA

  • Quote

Post by kos » Mon Sep 07, 2009 2:13 pm

ebuild for 0.1.5 anyone? :)
/KoS
Top
Post Reply

23 posts • Page 1 of 1

Return to “Other Things Gentoo”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic