summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO16
-rwxr-xr-xPKGBUILD21
-rwxr-xr-xchecksums.desktop65
-rwxr-xr-xchecksums.sh51
4 files changed, 153 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..a7b8b39b41e0
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,16 @@
+# Generated by makepkg 5.0.1
+# Fri Sep 30 11:47:25 UTC 2016
+pkgbase = checksums
+ pkgdesc = Service menu and a small script for calculation of md5, sha1 and sha256 checksums
+ pkgver = 0.5
+ pkgrel = 1
+ arch = any
+ license = GPL
+ depends = kdialog
+ source = checksums.desktop
+ source = checksums.sh
+ md5sums = c5b67e2b939ead50b36f10d3cbb298b5
+ md5sums = 60f8579606e732f2005d091042817d3a
+
+pkgname = checksums
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100755
index 000000000000..9e5f0b081aae
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,21 @@
+# Contributor: Mladen Pejakovic <pejakm at autistici dot org>
+
+pkgname=checksums
+pkgver=0.5
+pkgrel=1
+pkgdesc="Service menu and a small script for calculation of md5, sha1 and sha256 checksums"
+url=""
+depends=('kdialog')
+license=('GPL')
+arch=('any')
+
+source=(checksums.desktop
+ checksums.sh)
+md5sums=('c5b67e2b939ead50b36f10d3cbb298b5'
+ '60f8579606e732f2005d091042817d3a')
+
+package() {
+ cd ${srcdir}
+ install -D -m 755 checksums.sh ${pkgdir}/usr/bin/checksums.sh
+ install -D -m 755 checksums.desktop ${pkgdir}/usr/share/kservices5/ServiceMenus/checksums.desktop
+}
diff --git a/checksums.desktop b/checksums.desktop
new file mode 100755
index 000000000000..ca2624083fb8
--- /dev/null
+++ b/checksums.desktop
@@ -0,0 +1,65 @@
+############
+# Checksums v0.5 by Mladen Pejaković <pejakm at autistici dot org>
+# Licensed under GPL3
+# Service menu and a small script for calculation of md5, sha1 and sha256 checksums.
+#
+
+[Desktop Entry]
+Encoding=UTF-8
+Type=Service
+ServiceTypes=KonqPopupMenu/Plugin
+MimeType=all/allfiles;
+Actions=md5sum;sha1sum;sha256sum;checksums;
+X-KDE-Submenu=Checksums
+X-KDE-Submenu[sr]=Контролне суме
+X-KDE-Submenu[sr@latin]=Kontrolne sume
+X-KDE-Submenu[sr@ijekavian]=Контролне суме
+X-KDE-Submenu[sr@ijekavianlatin]=Kontrolne sume
+
+[Desktop Action md5sum]
+Name=MD5sum
+Name[sr]=МД5 сума
+Name[sr@latin]=MD5 suma
+Name[sr@ijekavian]=МД5 сума
+Name[sr@ijekavianlatin]=MD5 suma
+Exec=kdialog --icon=security-high --title "%n md5" --warningyesno "`md5sum %u | cut -d ' ' -f1` \nSave to file?" && cd %d && md5sum %n > %n.md5
+Exec[sr]=kdialog --icon=security-high --title "%n md5" --warningyesno "`md5sum %u | cut -d ' ' -f1` \nСачувати у фајл?" && cd %d && md5sum %n > %n.md5
+Exec[sr@latin]=kdialog --icon=security-high --title "%n md5" --warningyesno "`md5sum %u | cut -d ' ' -f1` \nSačuvati u fajl?" && cd %d && md5sum %n > %n.md5
+Exec[sr@ijekavian]=kdialog --icon=security-high --title "%n md5" --warningyesno "`md5sum %u | cut -d ' ' -f1` \nСачувати у фајл?" && cd %d && md5sum %n > %n.md5
+Exec[sr@ijekavianlatin]=kdialog --icon=security-high --title "%n md5" --warningyesno "`md5sum %u | cut -d ' ' -f1` \nSačuvati u fajl?" && cd %d && md5sum %n > %n.md5
+Icon=security-high
+
+[Desktop Action sha1sum]
+Name=SHA1sum
+Name[sr]=СХА1 сума
+Name[sr@latin]=SHA1 suma
+Name[sr@ijekavian]=СХА1 сума
+Name[sr@ijekavianlatin]=SHA1 suma
+Exec=kdialog --icon=security-high --title "%n sha1" --warningyesno "`sha1sum %u | cut -d ' ' -f1` \nSave to file?" && cd %d && sha1sum %n > %n.sha1
+Exec[sr]=kdialog --icon=security-high --title "%n sha1" --warningyesno "`sha1sum %u | cut -d ' ' -f1` \nСачувати у фајл?" && cd %d && sha1sum %n > %n.sha1
+Exec[sr@latin]=kdialog --icon=security-high --title "%n sha1" --warningyesno "`sha1sum %u | cut -d ' ' -f1` \nSačuvati u fajl?" && cd %d && sha1sum %n > %n.sha1
+Exec[sr@ijekavian]=kdialog --icon=security-high --title "%n sha1" --warningyesno "`sha1sum %u | cut -d ' ' -f1` \nСачувати у фајл?" && cd %d && sha1sum %n > %n.sha1
+Exec[sr@ijekavianlatin]=kdialog --icon=security-high --title "%n sha1" --warningyesno "`sha1sum %u | cut -d ' ' -f1` \nSačuvati u fajl?" && cd %d && sha1sum %n > %n.sha1
+Icon=security-high
+
+[Desktop Action sha256sum]
+Name=SHA256sum
+Name[sr]=СХА256 сума
+Name[sr@latin]=SHA256 suma
+Name[sr@ijekavian]=СХА256 сума
+Name[sr@ijekavianlatin]=SHA256 suma
+Exec=kdialog --icon=security-high --title "%n sha256" --warningyesno "`sha256sum %u | cut -d ' ' -f1` \nSave to file?" && cd %d && sha256sum %n > %n.sha256
+Exec[sr]=kdialog --icon=security-high --title "%n sha256" --warningyesno "`sha256sum %u | cut -d ' ' -f1` \nСачувати у фајл?" && cd %d && sha256sum %n > %n.sha256
+Exec[sr@latin]=kdialog --icon=security-high --title "%n sha256" --warningyesno "`sha256sum %u | cut -d ' ' -f1` \nSačuvati u fajl?" && cd %d && sha256sum %n > %n.sha256
+Exec[sr@ijekavian]=kdialog --icon=security-high --title "%n sha256" --warningyesno "`sha256sum %u | cut -d ' ' -f1` \nСачувати у фајл?" && cd %d && sha256sum %n > %n.sha256
+Exec[sr@ijekavianlatin]=kdialog --icon=security-high --title "%n sha256" --warningyesno "`sha256sum %u | cut -d ' ' -f1` \nSačuvati u fajl?" && cd %d && sha256sum %n > %n.sha256
+Icon=security-high
+
+[Desktop Action checksums]
+Name=Check
+Name[sr]=Провери
+Name[sr@latin]=Proveri
+Name[sr@ijekavian]=Провјери
+Name[sr@ijekavianlatin]=Provjeri
+Exec=checksums.sh %u
+Icon=security-high
diff --git a/checksums.sh b/checksums.sh
new file mode 100755
index 000000000000..29a1d2150dc6
--- /dev/null
+++ b/checksums.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+# Checksums v0.5
+# Licensed under GPL3
+#
+# For original author please refer to:
+# http://kde-look.org/content/show.php/KonqCheckSum?content=83460
+
+md5=`md5sum $1 | awk '{ print $1;}'`
+sha1=`sha1sum $1 | awk '{ print $1;}'`
+sha256=`sha256sum $1 | awk '{ print $1;}'`
+ERROR=0
+N=3
+
+if [ -f $1.md5 ]; then
+ refmd5=`cat $1.md5 | awk '{ print $1;}'`
+ if [ "$md5" != "$refmd5" ]; then
+ kdialog --icon=security-low.png --sorry "md5 doesn't match!"
+ ERROR=1
+ fi
+else
+ let N=$N-1
+fi
+
+if [ -f $1.sha1 ]; then
+ refsha1=`cat $1.sha1 | awk '{ print $1;}'`
+ if [ "$sha1" != "$refsha1" ]; then
+ kdialog --icon=security-low.png --sorry "sha1 doesn't match!"
+ ERROR=1
+ fi
+else
+ let N=$N-1
+fi
+
+if [ -f $1.sha256 ]; then
+ refsha256=`cat $1.sha256 | awk '{ print $1;}'`
+ if [ "$sha256" != "$refsha256" ]; then
+ kdialog --icon=security-low.png --sorry "sha256 doesn't match!"
+ ERROR=1
+ fi
+else
+ let N=$N-1
+fi
+
+if [ $N = 0 ]; then
+ kdialog --icon=security-medium --error "No checksum files exist for this file."
+ ERROR=1
+fi
+
+if [ $ERROR = 0 ]; then
+ kdialog --icon=security-high --msgbox "Checksums match."
+fi