85 lines
1.6 KiB
Nix
85 lines
1.6 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchgit,
|
|
autoreconfHook,
|
|
pkg-config,
|
|
gettext,
|
|
python3,
|
|
ncurses,
|
|
swig,
|
|
glib,
|
|
util-linux,
|
|
cryptsetup,
|
|
nss,
|
|
gpgme,
|
|
buildPackages,
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "volume_key";
|
|
version = "0.3.11";
|
|
|
|
src = fetchgit {
|
|
url = "https://pagure.io/volume_key.git";
|
|
rev = "volume_key-${version}";
|
|
sha256 = "1sqdbcih1c39bjiv4mm1m7acc3lfh2i2hf2r9i7rk8adfzq8awma";
|
|
};
|
|
|
|
outputs = [
|
|
"out"
|
|
"man"
|
|
"dev"
|
|
"py"
|
|
];
|
|
|
|
strictDeps = true;
|
|
|
|
nativeBuildInputs = [
|
|
autoreconfHook
|
|
gettext
|
|
gpgme
|
|
pkg-config
|
|
swig
|
|
];
|
|
|
|
buildInputs = [
|
|
glib
|
|
cryptsetup
|
|
nss
|
|
util-linux
|
|
ncurses
|
|
];
|
|
|
|
configureFlags = [
|
|
"--with-gpgme-prefix=${gpgme.dev}"
|
|
];
|
|
|
|
preConfigure = ''
|
|
export PYTHON="${buildPackages.python3}/bin/python"
|
|
export PYTHON3_CONFIG="${python3}/bin/python3-config"
|
|
'';
|
|
|
|
makeFlags = [
|
|
"pyexecdir=$(py)/${python3.sitePackages}"
|
|
"pythondir=$(py)/${python3.sitePackages}"
|
|
];
|
|
|
|
env = lib.optionalAttrs stdenv.cc.isGNU {
|
|
NIX_CFLAGS_COMPILE = toString [
|
|
"-Wno-error=implicit-function-declaration"
|
|
"-Wno-error=int-conversion"
|
|
];
|
|
};
|
|
|
|
doCheck = false; # fails 1 out of 1 tests, needs `certutil`
|
|
|
|
meta = with lib; {
|
|
description = "Library for manipulating storage volume encryption keys and storing them separately from volumes to handle forgotten passphrases, and the associated command-line tool";
|
|
mainProgram = "volume_key";
|
|
homepage = "https://pagure.io/volume_key/";
|
|
license = licenses.gpl2;
|
|
maintainers = [ ];
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|