about summary refs log tree commit diff
path: root/pkgs/tools/security/tpm-luks/default.nix
blob: 6063cdecc67a552b58836e41ee8362683d256764 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{ lib, stdenv, fetchFromGitHub, autoreconfHook, gawk, trousers, cryptsetup, openssl }:

stdenv.mkDerivation {
  pname = "tpm-luks";
  version = "unstable-2015-07-11";

  src = fetchFromGitHub {
    owner = "momiji";
    repo = "tpm-luks";
    rev = "c9c5b7fdddbcdac1cd4d2ea6baddd0617cc88ffa";
    sha256 = "sha256-HHyZLZAXfmuimpHV8fOWldZmi4I5uV1NnSmP4E7ZQtc=";
  };

  patches = [
    ./openssl-1.1.patch
    ./signed-ptr.patch
  ];

  nativeBuildInputs = [ autoreconfHook ];
  buildInputs = [ gawk trousers cryptsetup openssl ];

  installPhase = ''
    mkdir -p $out
    make install DESTDIR=$out
    mv $out/$out/sbin $out/bin
    rm -r $out/nix
  '';

  meta = with lib; {
    description = "LUKS key storage in TPM NVRAM";
    homepage = "https://github.com/shpedoikal/tpm-luks/";
    maintainers = [ maintainers.tstrobel ];
    license = with licenses; [ gpl2Only ];
    platforms = platforms.linux;
  };
}