Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: Ie19e1d0f147dd98d15f71adc16ca691f6a6a6964
45 lines
997 B
Nix
45 lines
997 B
Nix
{
|
|
lib,
|
|
craneLib,
|
|
}: let
|
|
pname = "eris";
|
|
inherit ((lib.importTOML ../Cargo.toml).package) version;
|
|
src = let
|
|
fs = lib.fileset;
|
|
s = ../.;
|
|
in
|
|
fs.toSource {
|
|
root = s;
|
|
fileset = fs.unions [
|
|
(fs.fileFilter (file: builtins.any file.hasExt ["rs"]) (s + /src))
|
|
(s + /contrib)
|
|
|
|
(s + /Cargo.lock)
|
|
(s + /Cargo.toml)
|
|
];
|
|
};
|
|
|
|
cargoArtifacts = craneLib.buildDepsOnly {
|
|
name = "${pname}-deps";
|
|
strictDeps = true;
|
|
inherit src;
|
|
};
|
|
in
|
|
craneLib.buildPackage {
|
|
inherit pname src version cargoArtifacts;
|
|
|
|
strictDeps = true;
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/share/contrib
|
|
cp -rf $src/contrib/corpus $out/share/contrib
|
|
cp -rf $src/contrib/lua $out/share/contrib
|
|
'';
|
|
|
|
meta = {
|
|
description = "Sophisticated HTTP tarpit and honeypot stream";
|
|
homepage = "https://git.frzn.dev/NotAShelf/eris";
|
|
maintainers = [lib.maintainers.NotAShelf];
|
|
mainProgram = "eris";
|
|
};
|
|
}
|