27 lines
1.1 KiB
Plaintext
27 lines
1.1 KiB
Plaintext
# Expose all (except xen-frontend) block devices via Qubes DB
|
|
|
|
# Only block devices are interesting
|
|
SUBSYSTEM!="block", GOTO="qubes_block_end"
|
|
|
|
# Hide qubes-internal drives from udisks, so file selection dialogs
|
|
ENV{MAJOR}=="7", ENV{UDISKS_IGNORE}="1"
|
|
KERNEL=="xvda|xvdb|xvdc*|xvdd", ENV{UDISKS_IGNORE}="1"
|
|
|
|
# Skip xen-blkfront devices
|
|
ENV{MAJOR}=="202", GOTO="qubes_block_end"
|
|
|
|
# Skip device-mapper devices
|
|
ENV{MAJOR}=="253", ENV{DM_NAME}=="snapshot-*", GOTO="qubes_block_end"
|
|
ENV{MAJOR}=="253", ENV{DM_NAME}=="origin-*", GOTO="qubes_block_end"
|
|
ENV{MAJOR}=="253", ENV{DM_NAME}=="", GOTO="qubes_block_end"
|
|
|
|
IMPORT{db}="QUBES_EXPOSED"
|
|
ACTION=="add", IMPORT{program}="/usr/bin/flock /var/run/qubes-udev.lock -c /usr/libexec/qubes/udev-block-add-change"
|
|
ACTION=="change", IMPORT{program}="/usr/bin/flock /var/run/qubes-udev.lock -c /usr/libexec/qubes/udev-block-add-change"
|
|
ACTION=="remove", RUN+="/usr/libexec/qubes/udev-block-remove"
|
|
|
|
LABEL="qubes_block_end"
|
|
|
|
# Cleanup disconnected frontend from xenstore
|
|
ACTION=="remove", SUBSYSTEM=="block", ENV{MAJOR}=="202", RUN+="/usr/libexec/qubes/udev-block-cleanup"
|