amneziawg-tools: init at 1.0.20241018
This commit is contained in:
parent
1b6fe61860
commit
c0072d342d
88
pkgs/by-name/am/amneziawg-tools/package.nix
Normal file
88
pkgs/by-name/am/amneziawg-tools/package.nix
Normal file
@ -0,0 +1,88 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
makeWrapper,
|
||||
bash,
|
||||
procps,
|
||||
iproute2,
|
||||
iptables,
|
||||
openresolv,
|
||||
amneziawg-go,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "amneziawg-tools";
|
||||
version = "1.0.20241018";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "amnezia-vpn";
|
||||
repo = "amneziawg-tools";
|
||||
rev = "refs/tags/v${finalAttrs.version}";
|
||||
hash = "sha256-y6xkOLT9KVD6ACCH60Myk2iA1S8/+tGXEQbOYnu+dPI=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/src";
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"man"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ bash ];
|
||||
|
||||
makeFlags = [
|
||||
"DESTDIR=${placeholder "out"}"
|
||||
"PREFIX=/"
|
||||
"WITH_BASHCOMPLETION=yes"
|
||||
"WITH_SYSTEMDUNITS=yes"
|
||||
"WITH_WGQUICK=yes"
|
||||
];
|
||||
|
||||
postFixup =
|
||||
''
|
||||
substituteInPlace $out/lib/systemd/system/awg-quick@.service \
|
||||
--replace-fail /usr/bin $out/bin
|
||||
''
|
||||
+ lib.optionalString stdenv.isLinux ''
|
||||
for f in $out/bin/*; do
|
||||
# Which firewall and resolvconf implementations to use should be determined by the
|
||||
# environment, we provide the "default" ones as fallback.
|
||||
wrapProgram $f \
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
procps
|
||||
iproute2
|
||||
]
|
||||
} \
|
||||
--suffix PATH : ${
|
||||
lib.makeBinPath [
|
||||
iptables
|
||||
openresolv
|
||||
]
|
||||
}
|
||||
done
|
||||
''
|
||||
+ lib.optionalString stdenv.isDarwin ''
|
||||
for f in $out/bin/*; do
|
||||
wrapProgram $f \
|
||||
--prefix PATH : ${lib.makeBinPath [ amneziawg-go ]}
|
||||
done
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Tools for configuring AmneziaWG";
|
||||
homepage = "https://amnezia.org";
|
||||
changelog = "https://github.com/amnezia-vpn/amneziawg-tools/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.gpl2Only;
|
||||
maintainers = with lib.maintainers; [ averyanalex ];
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "awg";
|
||||
};
|
||||
})
|
Loading…
Reference in New Issue
Block a user