1{ lib, stdenv, buildEnv, fetchFromGitHub, mono }:
2
3let
4 version = "1.8.4.2";
5 drv = stdenv.mkDerivation {
6 pname = "keepasshttp";
7 inherit version;
8 src = fetchFromGitHub {
9 owner = "pfn";
10 repo = "keepasshttp";
11 # rev = version;
12 # for 1.8.4.2 the tag is at the wrong commit (they fixed stuff
13 # afterwards and didn't move the tag), hence reference by commitid
14 rev = "c2c4eb5388a02169400cba7a67be325caabdcc37";
15 sha256 = "0bkzxggbqx7sql3sp46bqham6r457in0vrgh3ai3lw2jrw79pwmh";
16 };
17
18 meta = {
19 description = "KeePass plugin to expose password entries securely (256bit AES/CBC) over HTTP";
20 homepage = "https://github.com/pfn/keepasshttp";
21 platforms = with lib.platforms; linux;
22 license = lib.licenses.gpl3;
23 };
24
25 pluginFilename = "KeePassHttp.plgx";
26
27 installPhase = ''
28 mkdir -p $out/lib/dotnet/keepass/
29 cp $pluginFilename $out/lib/dotnet/keepass/$pluginFilename
30 '';
31 };
32in
33 # Mono is required to compile plugin at runtime, after loading.
34 buildEnv { name = drv.name; paths = [ mono drv ]; }