2021-01-15 22:18:51 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub }:
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
# Don't use this for anything important yet!
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2021-02-05 17:12:51 +00:00
|
|
|
pname = "fscryptctl";
|
|
|
|
version = "0.1.0";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
goPackagePath = "github.com/google/fscrypt";
|
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "google";
|
|
|
|
repo = "fscryptctl";
|
2021-02-05 17:12:51 +00:00
|
|
|
rev = "v${version}";
|
2020-04-24 23:36:52 +00:00
|
|
|
sha256 = "1853hlpklisbqnkb7a921dsf0vp2nr2im26zpmrs592cnpsvk3hb";
|
|
|
|
};
|
|
|
|
|
|
|
|
makeFlags = [ "DESTDIR=$(out)/bin" ];
|
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
meta = with lib; {
|
2021-02-05 17:12:51 +00:00
|
|
|
description = "Small C tool for Linux filesystem encryption";
|
|
|
|
longDescription = ''
|
|
|
|
fscryptctl is a low-level tool written in C that handles raw keys and
|
|
|
|
manages policies for Linux filesystem encryption, specifically the
|
|
|
|
"fscrypt" kernel interface which is supported by the ext4, f2fs, and
|
|
|
|
UBIFS filesystems.
|
|
|
|
fscryptctl is mainly intended for embedded systems which can't use the
|
|
|
|
full-featured fscrypt tool, or for testing or experimenting with the
|
|
|
|
kernel interface to Linux filesystem encryption. fscryptctl does not
|
|
|
|
handle key generation, key stretching, key wrapping, or PAM integration.
|
|
|
|
Most users should use the fscrypt tool instead, which supports these
|
|
|
|
features and generally is much easier to use.
|
|
|
|
As fscryptctl is intended for advanced users, you should read the kernel
|
|
|
|
documentation for filesystem encryption before using fscryptctl.
|
2020-04-24 23:36:52 +00:00
|
|
|
'';
|
|
|
|
inherit (src.meta) homepage;
|
|
|
|
license = licenses.asl20;
|
|
|
|
platforms = platforms.linux;
|
|
|
|
maintainers = with maintainers; [ primeos ];
|
|
|
|
};
|
|
|
|
}
|