summary refs log tree commit diff
path: root/pkgs/tools/filesystems/gocryptfs
diff options
context:
space:
mode:
authorPavol Rusnak <pavol@rusnak.io>2020-10-16 10:31:31 +0200
committerPavol Rusnak <pavol@rusnak.io>2021-06-06 11:09:55 +0200
commit124b3ed75a32659a76388c730af46f253d97d401 (patch)
tree72e7a057109185d0d26f76be440239e0d1e4547f /pkgs/tools/filesystems/gocryptfs
parentf9168ac269b86d441b2954e28e370cb7418c2230 (diff)
downloadnixpkgs-124b3ed75a32659a76388c730af46f253d97d401.tar
nixpkgs-124b3ed75a32659a76388c730af46f253d97d401.tar.gz
nixpkgs-124b3ed75a32659a76388c730af46f253d97d401.tar.bz2
nixpkgs-124b3ed75a32659a76388c730af46f253d97d401.tar.lz
nixpkgs-124b3ed75a32659a76388c730af46f253d97d401.tar.xz
nixpkgs-124b3ed75a32659a76388c730af46f253d97d401.tar.zst
nixpkgs-124b3ed75a32659a76388c730af46f253d97d401.zip
gocryptfs: 1.8.0 -> 2.0
- add libfido2 to propagatedBuildInputs to enable fido2 features
  (gocryptfs uses command-line tools contained in the package)

- skip documentation on aarch64-darwin
  (pandoc is broken because of the missing ghc)
Diffstat (limited to 'pkgs/tools/filesystems/gocryptfs')
-rw-r--r--pkgs/tools/filesystems/gocryptfs/default.nix27
1 files changed, 21 insertions, 6 deletions
diff --git a/pkgs/tools/filesystems/gocryptfs/default.nix b/pkgs/tools/filesystems/gocryptfs/default.nix
index b8b330c129a..83d53c31888 100644
--- a/pkgs/tools/filesystems/gocryptfs/default.nix
+++ b/pkgs/tools/filesystems/gocryptfs/default.nix
@@ -1,28 +1,42 @@
 { lib
+, stdenv
 , buildGoModule
 , fetchFromGitHub
 , openssl
 , pandoc
 , pkg-config
+, libfido2
 }:
 
+let
+  # pandoc is currently broken on aarch64-darwin
+  # because of missing ghc
+  brokenPandoc = stdenv.isDarwin && stdenv.isAarch64;
+in
+
 buildGoModule rec {
   pname = "gocryptfs";
-  version = "1.8.0";
+  version = "2.0";
 
   src = fetchFromGitHub {
     owner = "rfjakob";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1acalwrr5xqhpqca3gypj0s68w6vpckxmg5z5gfgh8wx6nqx4aw9";
+    sha256 = "1wpdzi1qfpab76v0ki74qkk82m3ykr4iqb8r6a8k11l4fn42fjk0";
   };
 
-  runVend = true;
-  vendorSha256 = "0z3y51sgr1rmr23jpc5h5d5lw14p3qzv48rc7zj7qa4rd5cfhsgi";
+  vendorSha256 = "10az8n7z4rhsk1af2x6v3pmxg4zp7c9cal35ily8bdzzcb9cpgs0";
+
+  nativeBuildInputs = [
+    pkg-config
+  ] ++ lib.optionals (!brokenPandoc) [
+    pandoc
+  ];
 
-  nativeBuildInputs = [ pandoc pkg-config ];
   buildInputs = [ openssl ];
 
+  propagatedBuildInputs = [ libfido2 ];
+
   buildFlagsArray = ''
     -ldflags=
       -X main.GitVersion=${version}
@@ -32,9 +46,10 @@ buildGoModule rec {
 
   subPackages = [ "." "gocryptfs-xray" "contrib/statfs" ];
 
-  postBuild = ''
+  postBuild = lib.optionalString (!brokenPandoc) ''
     pushd Documentation/
     mkdir -p $out/share/man/man1
+    # taken from Documentation/MANPAGE-render.bash
     pandoc MANPAGE.md -s -t man -o $out/share/man/man1/gocryptfs.1
     pandoc MANPAGE-XRAY.md -s -t man -o $out/share/man/man1/gocryptfs-xray.1
     pandoc MANPAGE-STATFS.md -s -t man -o $out/share/man/man1/statfs.1