summaryrefslogtreecommitdiff
path: root/.local
diff options
context:
space:
mode:
authorKyren223 <contact@kyren.codes>2026-06-07 17:24:00 +0300
committerKyren223 <contact@kyren.codes>2026-06-07 17:24:00 +0300
commit72fd922f0a4b94151492b5138cd7e1bf808b1086 (patch)
treea3255976d9c6349ae2ef42544ab4741ae8f7d191 /.local
parent71a640d4d320ef6b4a72bf1e50fca3d7ed76c28f (diff)
add context menus to dolphin for unlocking/locking encrypted ZFS datasets
Diffstat (limited to '.local')
-rwxr-xr-x.local/share/kio/servicemenus/zfs-vault.desktop16
1 files changed, 16 insertions, 0 deletions
diff --git a/.local/share/kio/servicemenus/zfs-vault.desktop b/.local/share/kio/servicemenus/zfs-vault.desktop
new file mode 100755
index 0000000..d018af9
--- /dev/null
+++ b/.local/share/kio/servicemenus/zfs-vault.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Type=Service
+X-KDE-ServiceTypes=KonqPopupMenu/Plugin
+MimeType=inode/directory;
+Actions=unlockZfs;lockZfs;
+X-KDE-Priority=TopLevel
+
+[Desktop Action unlockZfs]
+Name=Unlock ZFS Vault
+Icon=dialog-password
+Exec=bash -c 'PASS=$(zenity --password --title="Unlock ZFS Dataset"); if [ -n "$PASS" ]; then echo "$PASS" | sudo zfs load-key iron-wolf/media/documents && sudo zfs mount iron-wolf/media/documents || zenity --error --text="Failed to mount dataset."; fi'
+
+[Desktop Action lockZfs]
+Name=Lock & Unload ZFS Vault
+Icon=object-locked
+Exec=bash -c 'sudo zfs unmount iron-wolf/media/documents && sudo zfs unload-key iron-wolf/media/documents && zenity --info --text="Dataset locked successfully." || zenity --error --text="Failed to unmount. Is the directory in use?"'