From 2046472e7b1f0d451c05da9a9bfdf8214b7fe032 Mon Sep 17 00:00:00 2001 From: Pekka Helenius Date: Wed, 22 May 2019 23:45:04 +0300 Subject: [PATCH] Add kde-servicemenus-destroyfile --- Readme.md | 6 ++++++ kde-servicemenus-destroyfile/PKGBUILD | 18 ++++++++++++++++++ .../dolphin-destroyfile.desktop | 14 ++++++++++++++ .../dolphin-destroyfile.sh | 14 ++++++++++++++ 4 files changed, 52 insertions(+) create mode 100644 kde-servicemenus-destroyfile/PKGBUILD create mode 100644 kde-servicemenus-destroyfile/dolphin-destroyfile.desktop create mode 100644 kde-servicemenus-destroyfile/dolphin-destroyfile.sh diff --git a/Readme.md b/Readme.md index 612b7a7..71fd09e 100644 --- a/Readme.md +++ b/Readme.md @@ -60,6 +60,12 @@ Adds a KDE5 compatible shortcut file for magiclantern-bootablecard package. If y **FORMAT:** Arch Linux PKGBUILD script + source files. +## [kde-servicemenus-destroyfile](kde-servicemenus-destroyfile) + +Plasma 5 Dolphin service menu script for destroying files with `shred`. + +**FORMAT:** Arch Linux PKGBUILD script + source files. + ## [kde-servicemenus-dualiso](kde-servicemenus-dualiso) Plasma 5 Dolphin service menu script for cr2hdr package. diff --git a/kde-servicemenus-destroyfile/PKGBUILD b/kde-servicemenus-destroyfile/PKGBUILD new file mode 100644 index 0000000..f0daf6e --- /dev/null +++ b/kde-servicemenus-destroyfile/PKGBUILD @@ -0,0 +1,18 @@ +pkgname=kde-servicemenus-destroyfile +pkgver=1 +pkgrel=1 +pkgdesc="A KDE service menu entry for destroying files with shred (KDE5 Dolphin action)" +arch=('any') +url="" +license=('GPL') +depends=('coreutils' 'dolphin' 'kdialog' 'libnotify') +source=('dolphin-destroyfile.desktop' +'dolphin-destroyfile.sh') +md5sums=('c7b3ed98ea6ec462c598d720f5c21c4a' + '1944d544ee7666864ed7822c18add4d9') + +package() { + mkdir -p $pkgdir/usr/share/kservices5/ServiceMenus/ + install -m 755 $srcdir/dolphin-destroyfile.desktop $pkgdir/usr/share/kservices5/ServiceMenus/dolphin-destroyfile.desktop + install -m 755 $srcdir/dolphin-destroyfile.sh $pkgdir/usr/share/kservices5/ServiceMenus/dolphin-destroyfile.sh +} diff --git a/kde-servicemenus-destroyfile/dolphin-destroyfile.desktop b/kde-servicemenus-destroyfile/dolphin-destroyfile.desktop new file mode 100644 index 0000000..c105e61 --- /dev/null +++ b/kde-servicemenus-destroyfile/dolphin-destroyfile.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Type=Service +ServiceTypes=KonqPopupMenu/Plugin +MimeType=application/octet-stream +Icon=editclear +Actions=destroy_file; +X-KDE-StartupNotify=false +X-KDE-Priority=TopLevel +#TryExec=shred + +[Desktop Action destroy_file] +Name=Destroy File +Icon=editclear +Exec=/usr/share/kservices5/ServiceMenus/dolphin-destroyfile.sh %U diff --git a/kde-servicemenus-destroyfile/dolphin-destroyfile.sh b/kde-servicemenus-destroyfile/dolphin-destroyfile.sh new file mode 100644 index 0000000..01c68f5 --- /dev/null +++ b/kde-servicemenus-destroyfile/dolphin-destroyfile.sh @@ -0,0 +1,14 @@ +#!/bin/env bash + +kdialog --yesno "Destroy selected file(s)?" --title Destroy +answer=$(echo "$?") + +if [ "$answer" == 0 ]; then + while [ $# -gt 0 ]; do + shred -n 3 -u "$1" + shift + done + notify-send "File Destroy" -i dialog-ok 'Target file(s) destroyed' +else + exit +fi