nixpkgs/pkgs/tools/filesystems/gocryptfs/default.nix
cw dccd1e9d05 gocryptfs: 1.6.1 -> 1.7
- Use pname instead of name
- Add patch for Darwin build
2019-07-16 08:17:17 +02:00

55 lines
1.6 KiB
Nix

# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
{ stdenv, buildGoPackage, fetchFromGitHub, openssl, pandoc, pkgconfig }:
let
goFuseVersion = with stdenv.lib; substring 0 7 (head (filter (
d: d.goPackagePath == "github.com/hanwen/go-fuse"
) (import ./deps.nix))).fetch.rev;
in
buildGoPackage rec {
pname = "gocryptfs";
version = "1.7"; # TODO: Drop `patches` with next release. Remove `fix-unix2syscall_darwin.go-build-failure.patch`.
goPackagePath = "github.com/rfjakob/gocryptfs";
nativeBuildInputs = [ pandoc pkgconfig ];
buildInputs = [ openssl ];
src = fetchFromGitHub {
owner = "rfjakob";
repo = pname;
rev = "v${version}";
sha256 = "1sr3i73haw07faqpw785cdda2kna8q3a0zhwab1p3i935rvp4qaa";
};
# Fixes build on darwin
# Source: https://github.com/rfjakob/gocryptfs/commit/b1468a732fa26550f2a6f8a21cc7bd47b65a8c96
patches = [ ./fix-unix2syscall_darwin.go-build-failure.patch ];
postPatch = "rm -r tests";
buildFlagsArray = ''
-ldflags=
-X main.GitVersion=${version}
-X main.GitVersionFuse=${goFuseVersion}
'';
goDeps = ./deps.nix;
postBuild = ''
pushd go/src/github.com/rfjakob/gocryptfs/Documentation/
mkdir -p $out/share/man/man1
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
popd
'';
meta = with stdenv.lib; {
description = "Encrypted overlay filesystem written in Go";
license = licenses.mit;
homepage = https://nuetzlich.net/gocryptfs/;
maintainers = with maintainers; [ flokli offline ];
platforms = platforms.unix;
};
}