about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2023-09-05 07:58:40 +0200
committerGitHub <noreply@github.com>2023-09-05 07:58:40 +0200
commit3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f (patch)
tree892a9193f97ce12b291679d0e5c3affe86cae3ab
parent481ae84e99b13c0b4ac120adb91bd33b5537c635 (diff)
parentcecfb9af77e07000d06d0f0c16298cddeb177d11 (diff)
downloadnixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.tar
nixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.tar.gz
nixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.tar.bz2
nixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.tar.lz
nixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.tar.xz
nixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.tar.zst
nixlib-3c1c30ec5e76bf8ab454eeccc77fcbe1ebceca0f.zip
Merge pull request #237080 from linuxissuper/add-package-sirikali
sirikali: init at 1.5.1
-rw-r--r--maintainers/maintainer-list.nix7
-rw-r--r--pkgs/tools/security/sirikali/default.nix88
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 97 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index ce37b445adfb..fd856cb89c76 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -9849,6 +9849,13 @@
     githubId = 725613;
     name = "Linus Arver";
   };
+  linuxissuper = {
+    email = "m+nix@linuxistcool.de";
+    matrix = "@m:linuxistcool.de";
+    github = "linuxissuper";
+    githubId = 74221543;
+    name = "Moritz Goltdammer";
+  };
   lionello = {
     email = "lio@lunesu.com";
     github = "lionello";
diff --git a/pkgs/tools/security/sirikali/default.nix b/pkgs/tools/security/sirikali/default.nix
new file mode 100644
index 000000000000..a3e67a2b76a5
--- /dev/null
+++ b/pkgs/tools/security/sirikali/default.nix
@@ -0,0 +1,88 @@
+{ lib
+, stdenv
+, qtbase
+, libpwquality
+, hicolor-icon-theme
+, fetchFromGitHub
+, wrapQtAppsHook
+, cmake
+, pkg-config
+, libgcrypt
+, cryfs
+, encfs
+, fscrypt-experimental
+, gocryptfs
+, securefs
+, sshfs
+, libsecret
+, kwallet
+, withKWallet ? true
+, withLibsecret ? true
+}:
+
+stdenv.mkDerivation rec {
+  pname = "sirikali";
+  version = "1.5.1";
+
+  src = fetchFromGitHub {
+    owner = "mhogomchungu";
+    repo = "sirikali";
+    rev = version;
+    hash = "sha256-1bY8cCMMK4Jie4+9c7eUEBrPEYDaOqFHZ5252TPSotA=";
+  };
+
+  buildInputs = [
+    qtbase
+    libpwquality
+    hicolor-icon-theme
+    libgcrypt
+    cryfs
+    encfs
+    fscrypt-experimental
+    gocryptfs
+    securefs
+    sshfs
+  ]
+  ++ lib.optionals withKWallet [ libsecret ]
+  ++ lib.optionals withLibsecret [ kwallet ]
+  ;
+
+  nativeBuildInputs = [
+    wrapQtAppsHook
+    cmake
+    pkg-config
+  ];
+
+  qtWrapperArgs = [
+    ''--prefix PATH : ${lib.makeBinPath [
+      cryfs
+      encfs
+      fscrypt-experimental
+      gocryptfs
+      securefs
+      sshfs
+    ]}''
+  ];
+
+  postPatch = ''
+    substituteInPlace "src/engines.cpp" --replace "/sbin/" "/run/wrappers/bin/"
+  '';
+
+  doCheck = true;
+
+  cmakeFlags = [
+    "-DCMAKE_BUILD_TYPE=RELEASE"
+    "-DINTERNAL_LXQT_WALLET=false"
+    "-DNOKDESUPPORT=${if withKWallet then "false" else "true"}"
+    "-DNOSECRETSUPPORT=${if withLibsecret then "false" else "true"}"
+    "-DQT5=true"
+  ];
+
+  meta = with lib; {
+    description = "A Qt/C++ GUI front end to sshfs, ecryptfs-simple, cryfs, gocryptfs, securefs, fscrypt and encfs";
+    homepage = "https://github.com/mhogomchungu/sirikali";
+    changelog = "https://github.com/mhogomchungu/sirikali/blob/${src.rev}/changelog";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ linuxissuper ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0dce69e2545b..c4553f042196 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -42193,6 +42193,8 @@ with pkgs;
 
   dict-cc-py = callPackage ../applications/misc/dict-cc-py { };
 
+  sirikali = libsForQt5.callPackage ../tools/security/sirikali { };
+
   wttrbar = callPackage ../applications/misc/wttrbar { };
 
   wpm = callPackage ../applications/misc/wpm { };