[PATCH] Added SiriKali

  • Done
  • quality assurance status badge
Details
4 participants
  • Aaron Covrig
  • Leo Famulari
  • Ludovic Courtès
  • Christopher Baines
Owner
unassigned
Submitted by
Aaron Covrig
Severity
normal
A
A
Aaron Covrig wrote on 26 Aug 2023 23:23
(address . guix-patches@gnu.org)(name . Aaron Covrig)(address . aaron.covrig.us@ieee.org)
deeb29560251c3fbefc8a895dc113e0206dc2e52.1693085004.git.aaron.covrig.us@ieee.org

Comment: SiriKali provides a user friendly GUI for managing
encrypted folders and supports 'cloud friendly' encryption
such as CryFS, where the encrypted contents are split across
multiple encrypted blocks. These blocks only update as their
respective contents are changed, allowing for easier syncing
across network links by simplifying resumption of interrupted
transfers and providing smaller units for differential
transfer deltas.
---
gnu/packages/sirikali.scm | 59 +++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
create mode 100644 gnu/packages/sirikali.scm

Toggle diff (69 lines)
diff --git a/gnu/packages/sirikali.scm b/gnu/packages/sirikali.scm
new file mode 100644
index 0000000000..a81775f0ce
--- /dev/null
+++ b/gnu/packages/sirikali.scm
@@ -0,0 +1,59 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2023 Aaron Covrig <aaron.covrig.us@ieee.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages sirikali)
+ #:use-module (guix git-download)
+ #:use-module (guix packages)
+ #:use-module (guix build-system cmake)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gnome)
+ #:use-module (gnu packages gnupg)
+ #:use-module (gnu packages password-utils)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages qt)
+ #:use-module (gnu packages check)
+ #:use-module ((guix licenses)
+ #:prefix license:))
+
+(define-public sirikali
+ (package
+ (name "sirikali")
+ (version "1.5.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mhogomchungu/sirikali")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1l52s8rxkfcxcx3s2fnsh08wy6hhjjvp7gcggdi84aqc4dq3rdnm"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:tests? #f ;No tests
+ #:configure-flags '("-DQT5=true" "-DCMAKE_BUILD_TYPE=RELEASE")))
+ (inputs (list xdg-utils libpwquality libgcrypt libsecret qtbase-5))
+ (native-inputs (list pkg-config))
+ (home-page "https://mhogomchungu.github.io/sirikali/")
+ (synopsis
+ "GUI front end to sshfs, ecryptfs, cryfs, gocryptfs, securefs, fscrypt and encfs")
+ (description "@dfn{SiriKali} is a Qt/C++ GUI application that manages
+ecryptfs, cryfs, encfs, gocryptfs, fscrypt and securefs
+based encrypted folders")
+ (license (list license:gpl3 license:gpl2))))

base-commit: cfe55b220a2e21ec6314acd2fbaa5a780ea77afc
--
2.41.0
L
L
Ludovic Courtès wrote on 19 Oct 2023 22:07
(name . Aaron Covrig)(address . aaron.covrig.us@ieee.org)
87a5sez89h.fsf@gnu.org
Hi Aaron,

Sorry for the long delay!

Aaron Covrig <aaron.covrig.us@ieee.org> skribis:

Toggle quote (12 lines)
> Project GitHub: https://github.com/mhogomchungu/sirikali
>
> Comment: SiriKali provides a user friendly GUI for managing
> encrypted folders and supports 'cloud friendly' encryption
> such as CryFS, where the encrypted contents are split across
> multiple encrypted blocks. These blocks only update as their
> respective contents are changed, allowing for easier syncing
> across network links by simplifying resumption of interrupted
> transfers and providing smaller units for differential
> transfer deltas.

The comment above should rather complement the ‘description’ field of
the package.

For the commit log, we use a peculiar convention that consists in
describing the changes in terms of files, variables, etc.:


(One of us can fix it up for you though, if needed.)

Toggle quote (2 lines)
> +++ b/gnu/packages/sirikali.scm

Rather than create a new file, I’d suggest putting it in
file-systems.scm.

Toggle quote (5 lines)
> + (build-system cmake-build-system)
> + (arguments
> + '(#:tests? #f ;No tests
> + #:configure-flags '("-DQT5=true" "-DCMAKE_BUILD_TYPE=RELEASE")))

You can remove “-DCMAKE_BUILD_TYPE=RELEASE” (the default is
“RelWithDebInfo”).

Could you send an updated patch?

Thanks in advance,
Ludo’.
C
C
Christopher Baines wrote on 30 Oct 2023 11:38
tag 65556 moreinfo
(address . control@debbugs.gnu.org)
87il6ojsxt.fsf@cbaines.net
tags 65556 + moreinfo
quit
A
A
Aaron Covrig wrote on 21 Nov 2023 04:21
[PATCH v1] gnu: Add Sirikali.
(address . 65556@debbugs.gnu.org)(name . Aaron Covrig)(address . aaron.covrig.us@ieee.org)
ed70c7e18adae6ce7bd22aacddbec403b8f4f683.1700536912.git.aarcov@gmail.com
From: Aaron Covrig <aaron.covrig.us@ieee.org>

* gnu/packages/file-systems.scm (sirikali): New variable

Change-Id: Ie46cf269dac1ba842d935221b2372fb3d8a6ea2d
---
I have updated the patch to now use the new location and changed the
commit message to match the format I'm seeing in the commit logs (I
haven't seen a specific commit structure in
let me know if there is documentation on the prefered commit structure
and such as I am looking to send in some more patches and updates as time goes on.

Additionally, the 'Comment' message was more intended as extra details
to explain why I wished to include this software, not so much as the
'Description' field; I'm assuming that this is something that I can put
into this 'annotation' field going forward?

V/r,

Aaron Covrig

gnu/packages/file-systems.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (74 lines)
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm
index bc061a5958..aaf2f2ff21 100644
--- a/gnu/packages/file-systems.scm
+++ b/gnu/packages/file-systems.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
;;; Copyright © 2021, 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
;;; Copyright © 2022 Brian Cully <bjc@spork.org>
+;;; Copyright © 2023 Aaron Covrig <aaron.covrig.us@ieee.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -64,8 +65,10 @@ (define-module (gnu packages file-systems)
#:use-module (gnu packages docbook)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check)
@@ -81,6 +84,7 @@ (define-module (gnu packages file-systems)
#:use-module (gnu packages nfs)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages openldap)
+ #:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages photo)
@@ -91,6 +95,7 @@ (define-module (gnu packages file-systems)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages rsync)
#:use-module (gnu packages sssd)
@@ -2112,3 +2117,30 @@ (define-public dwarfs
@end itemize\n")
(license license:gpl3)))
+
+(define-public sirikali
+ (package
+ (name "sirikali")
+ (version "1.5.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mhogomchungu/sirikali")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1l52s8rxkfcxcx3s2fnsh08wy6hhjjvp7gcggdi84aqc4dq3rdnm"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:tests? #f ;No tests
+ #:configure-flags '("-DQT5=true" "-DCMAKE_BUILD_TYPE=RELEASE")))
+ (inputs (list xdg-utils libpwquality libgcrypt libsecret qtbase-5))
+ (native-inputs (list pkg-config))
+ (home-page "https://mhogomchungu.github.io/sirikali/")
+ (synopsis
+ "GUI front end to sshfs, ecryptfs, cryfs, gocryptfs, securefs, fscrypt and encfs")
+ (description "@dfn{SiriKali} is a Qt/C++ GUI application that manages
+ecryptfs, cryfs, encfs, gocryptfs, fscrypt and securefs
+based encrypted folders")
+ (license (list license:gpl3 license:gpl2))))

base-commit: d987b75618a62c95c030e7ca53e0972e700c4f06
--
2.41.0
A
A
Aaron Covrig wrote on 21 Nov 2023 04:45
[PATCH v2] gnu: Add Sirikali.
(address . 65556@debbugs.gnu.org)(name . Aaron Covrig)(address . aaron.covrig.us@ieee.org)
6184a928bbd61c376a19af6821e13567f95d0e82.1700538349.git.aaron.covrig.us@ieee.org
* gnu/packages/file-systems.scm (sirikali): New variable

Change-Id: Ie46cf269dac1ba842d935221b2372fb3d8a6ea2d
---
Quick update to also remove the '-DCMAKE_BUILD_TYPE=RELEASE' that was
mentioned as being unnecessary.

V/r,

Aaron Covrig

gnu/packages/file-systems.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (74 lines)
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm
index bc061a5958..a69e4c0eb6 100644
--- a/gnu/packages/file-systems.scm
+++ b/gnu/packages/file-systems.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
;;; Copyright © 2021, 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
;;; Copyright © 2022 Brian Cully <bjc@spork.org>
+;;; Copyright © 2023 Aaron Covrig <aaron.covrig.us@ieee.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -64,8 +65,10 @@ (define-module (gnu packages file-systems)
#:use-module (gnu packages docbook)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check)
@@ -81,6 +84,7 @@ (define-module (gnu packages file-systems)
#:use-module (gnu packages nfs)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages openldap)
+ #:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages photo)
@@ -91,6 +95,7 @@ (define-module (gnu packages file-systems)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages rsync)
#:use-module (gnu packages sssd)
@@ -2112,3 +2117,30 @@ (define-public dwarfs
@end itemize\n")
(license license:gpl3)))
+
+(define-public sirikali
+ (package
+ (name "sirikali")
+ (version "1.5.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mhogomchungu/sirikali")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1l52s8rxkfcxcx3s2fnsh08wy6hhjjvp7gcggdi84aqc4dq3rdnm"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:tests? #f ;No tests
+ #:configure-flags '("-DQT5=true")))
+ (inputs (list xdg-utils libpwquality libgcrypt libsecret qtbase-5))
+ (native-inputs (list pkg-config))
+ (home-page "https://mhogomchungu.github.io/sirikali/")
+ (synopsis
+ "GUI front end to sshfs, ecryptfs, cryfs, gocryptfs, securefs, fscrypt and encfs")
+ (description "@dfn{SiriKali} is a Qt/C++ GUI application that manages
+ecryptfs, cryfs, encfs, gocryptfs, fscrypt and securefs
+based encrypted folders")
+ (license (list license:gpl3 license:gpl2))))

base-commit: d987b75618a62c95c030e7ca53e0972e700c4f06
--
2.41.0
L
L
Leo Famulari wrote on 29 Dec 2023 23:15
(name . Aaron Covrig via Guix-patches via)(address . guix-patches@gnu.org)
ZY9FEKTARvNCFluQ@jasmine.lan
On Mon, Nov 20, 2023 at 10:45:49PM -0500, Aaron Covrig via Guix-patches via wrote:
Toggle quote (2 lines)
> * gnu/packages/file-systems.scm (sirikali): New variable

Thanks for this!

I tweaked the synopsis and description, and I also changed the license
to 'gpl2+', because all of the .cpp files I looked at describe the
license as, to paraphrase, "GPL 2 or any later version".

Pushed as f76ca2b0e894c244d5011a32b30dee8fd874e322
Closed
?