46 lines
1.4 KiB
Nix
46 lines
1.4 KiB
Nix
{ stdenv, fetchFromGitHub, pythonPackages, openssh, gnupg, unbound, libreswan }:
|
|
|
|
let
|
|
inherit (pythonPackages) python;
|
|
in stdenv.mkDerivation rec {
|
|
pname = "hash-slinger";
|
|
name = "${pname}-${version}";
|
|
version = "2.7";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "letoams";
|
|
repo = "${pname}";
|
|
rev = "${version}";
|
|
sha256 = "05wn744ydclpnpyah6yfjqlfjlasrrhzj48lqmm5a91nyps5yqyn";
|
|
};
|
|
|
|
pythonPath = with pythonPackages; [ dnspython m2crypto ipaddr python-gnupg
|
|
pyunbound ];
|
|
|
|
buildInputs = [ pythonPackages.wrapPython ];
|
|
propagatedBuildInputs = [ unbound libreswan ] ++ pythonPath;
|
|
propagatedUserEnvPkgs = [ unbound libreswan ];
|
|
|
|
patchPhase = ''
|
|
substituteInPlace Makefile \
|
|
--replace "$(DESTDIR)/usr" "$out"
|
|
substituteInPlace ipseckey \
|
|
--replace "/usr/sbin/ipsec" "${libreswan}/sbin/ipsec"
|
|
substituteInPlace tlsa \
|
|
--replace "/var/lib/unbound/root" "${pythonPackages.pyunbound}/etc/pyunbound/root"
|
|
patchShebangs *
|
|
'';
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/bin $out/man $out/${python.sitePackages}/
|
|
make install
|
|
wrapPythonPrograms
|
|
'';
|
|
|
|
meta = {
|
|
description = "Various tools to generate special DNS records";
|
|
homepage = "https://github.com/letoams/hash-slinger";
|
|
license = stdenv.lib.licenses.gpl2Plus;
|
|
maintainers = [ stdenv.lib.maintainers.leenaars ];
|
|
};
|
|
}
|