{ lib, buildGoModule, fetchFromGitHub, gnum4, pam, fscrypt-experimental }: # Don't use this for anything important yet! buildGoModule rec { pname = "fscrypt"; version = "0.3.4"; src = fetchFromGitHub { owner = "google"; repo = "fscrypt"; rev = "v${version}"; hash = "sha256-4Im3YWhLs5Q+o4DtpSuSMuKtKqXaICL9/EB0q5um6mQ="; }; postPatch = '' substituteInPlace Makefile \ --replace 'TAG_VERSION := $(shell git describe --tags)' "" \ --replace "/usr/local" "$out" ''; vendorHash = "sha256-APW0XM6fTQOCw4tE1NA5VNN3fBUmsvn99NqqJnB3Q0s="; doCheck = false; nativeBuildInputs = [ gnum4 ]; buildInputs = [ pam ]; buildPhase = '' runHook preBuild make runHook postBuild ''; installPhase = '' runHook preInstall make install runHook postInstall ''; meta = with lib; { description = "A high-level tool for the management of Linux filesystem encryption"; mainProgram = "fscrypt"; longDescription = '' This tool manages metadata, key generation, key wrapping, PAM integration, and provides a uniform interface for creating and modifying encrypted directories. ''; inherit (src.meta) homepage; changelog = "https://github.com/google/fscrypt/releases/tag/v${version}"; license = licenses.asl20; platforms = platforms.linux; maintainers = with maintainers; [ primeos ]; }; }