]> git.ipfire.org Git - thirdparty/systemd.git/blame_incremental - rules.d/60-cdrom_id.rules
update TODO
[thirdparty/systemd.git] / rules.d / 60-cdrom_id.rules
... / ...
CommitLineData
1# do not edit this file, it will be overwritten on update
2
3ACTION=="remove", GOTO="cdrom_end"
4SUBSYSTEM!="block", GOTO="cdrom_end"
5KERNEL!="sr[0-9]*|vdisk*|xvd*", GOTO="cdrom_end"
6ENV{DEVTYPE}!="disk", GOTO="cdrom_end"
7
8# unconditionally tag device as CDROM
9KERNEL=="sr[0-9]*", ENV{ID_CDROM}="1"
10
11# stop automatically any mount units bound to the device if the media eject
12# button is pressed.
13ENV{ID_CDROM}=="1", ENV{SYSTEMD_MOUNT_DEVICE_BOUND}="1"
14
15# media eject button pressed
16ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
17
18# import device and media properties and lock tray to
19# enable the receiving of media eject button events
20IMPORT{program}="cdrom_id --lock-media $devnode"
21
22# ejecting a CD does not remove the device node, so mark the systemd device
23# unit as inactive while there is no medium; this automatically cleans up of
24# stale mounts after ejecting
25ENV{DISK_MEDIA_CHANGE}=="?*", ENV{ID_CDROM_MEDIA}!="?*", ENV{SYSTEMD_READY}="0"
26
27KERNEL=="sr0", SYMLINK+="cdrom", OPTIONS+="link_priority=-100"
28
29LABEL="cdrom_end"