summaryrefslogtreecommitdiff
path: root/user/udisks2
diff options
context:
space:
mode:
Diffstat (limited to 'user/udisks2')
-rw-r--r--user/udisks2/50-udisks2.rules28
-rw-r--r--user/udisks2/APKBUILD8
2 files changed, 34 insertions, 2 deletions
diff --git a/user/udisks2/50-udisks2.rules b/user/udisks2/50-udisks2.rules
new file mode 100644
index 000000000..4c6088eaf
--- /dev/null
+++ b/user/udisks2/50-udisks2.rules
@@ -0,0 +1,28 @@
+// Source: https://gist.github.com/Scrumplex/8f528c1f63b5f4bfabe14b0804adaba7
+// Original rules: https://github.com/coldfix/udiskie/wiki/Permissions
+// Changes: Added org.freedesktop.udisks2.filesystem-mount-system, as this is used by Dolphin.
+
+polkit.addRule(function(action, subject) {
+ var YES = polkit.Result.YES;
+ // NOTE: there must be a comma at the end of each line except for the last:
+ var permission = {
+ // required for udisks2:
+ "org.freedesktop.udisks2.filesystem-mount": YES,
+ "org.freedesktop.udisks2.encrypted-unlock": YES,
+ "org.freedesktop.udisks2.eject-media": YES,
+ "org.freedesktop.udisks2.power-off-drive": YES,
+ // Dolphin specific
+ "org.freedesktop.udisks2.filesystem-mount-system": YES,
+ // required for udisks2 if using another seat:
+ "org.freedesktop.udisks2.filesystem-mount-other-seat": YES,
+ "org.freedesktop.udisks2.filesystem-unmount-others": YES,
+ "org.freedesktop.udisks2.encrypted-unlock-other-seat": YES,
+ "org.freedesktop.udisks2.eject-media-other-seat": YES,
+ "org.freedesktop.udisks2.power-off-drive-other-seat": YES
+ };
+ // This is a terrible group choice, but nobody on the Horizon team wanted to
+ // give admins 'disk', which would be so much more appropriate...
+ if (subject.isInGroup("usb")) {
+ return permission[action.id];
+ }
+});
diff --git a/user/udisks2/APKBUILD b/user/udisks2/APKBUILD
index 07921ae96..41fc57eb4 100644
--- a/user/udisks2/APKBUILD
+++ b/user/udisks2/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=udisks2
-pkgver=2.8.4
+pkgver=2.9.0
pkgrel=0
pkgdesc="A Disk Manager"
url="https://www.freedesktop.org/wiki/Software/udisks"
@@ -13,6 +13,7 @@ depends_dev="acl-dev gobject-introspection-dev libatasmart-dev libblockdev-dev
makedepends="$depends_dev glib-dev gtk-doc intltool linux-headers"
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-libs"
source="https://github.com/storaged-project/udisks/releases/download/udisks-$pkgver/udisks-$pkgver.tar.bz2
+ 50-udisks2.rules
O_CLOEXEC.patch
"
builddir="$srcdir"/udisks-$pkgver
@@ -37,6 +38,8 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+ install -D -m644 "$srcdir"/50-udisks2.rules \
+ "$pkgdir"/etc/polkit-1/rules.d/50-udisks2.rules
}
libs() {
@@ -48,5 +51,6 @@ libs() {
"$subpkgdir"/usr/lib/
}
-sha512sums="70860e5ca9ac73d442ca67f0e0429ce2f33575d8f64945fbf06d1694b080c8b6fed8d65b2485eff0ab66eab59cdebeb9309424820a2ee82c5faaa38029e15e6c udisks-2.8.4.tar.bz2
+sha512sums="314355c9b0cc562b2359ea77137b3f2189c48e642c67cc9d9ed07048176967b67e78dfb3190dd160db2f92e8143a4f005bf2cc1aa814388a79201705e5297d0c udisks-2.9.0.tar.bz2
+e2b2cc10868ca341603c3403631b9962c9c776bf96f4ac2c764425363ffdbe1cd9c35233e568f84b276a1f6702b1ac5b9a14b4a62983067c44c433b58d1b7175 50-udisks2.rules
4352d63458ca51b362844d60109948ebeeecdc492a93443b391c0d75b6fff0c0af5018c8a8e441fb37bffd59c734298eaa936fcb0cd4c42ac55c1298b398b1dc O_CLOEXEC.patch"