48 lines
1.3 KiB
Nix
48 lines
1.3 KiB
Nix
{ stdenv, fetchurl, iproute, lzo, openssl, pam, systemd }:
|
|
|
|
with stdenv.lib;
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "openvpn-2.3.4";
|
|
|
|
src = fetchurl {
|
|
url = "http://swupdate.openvpn.net/community/releases/${name}.tar.gz";
|
|
sha256 = "0nn8rrh6jadsydnym69r4s7rm6jzsgxb6p23yb9ai3sn91gnsl5g";
|
|
};
|
|
|
|
patches = optional stdenv.isLinux ./systemd-notify.patch;
|
|
|
|
buildInputs = [ iproute lzo openssl pam ] ++ optional stdenv.isLinux systemd;
|
|
|
|
configureFlags = ''
|
|
--enable-password-save
|
|
--enable-iproute2
|
|
--enable-systemd
|
|
IPROUTE=${iproute}/sbin/ip
|
|
'';
|
|
|
|
preConfigure = ''
|
|
substituteInPlace ./src/openvpn/console.c \
|
|
--replace /bin/systemd-ask-password /run/current-system/sw/bin/systemd-ask-password
|
|
'';
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/share/doc/openvpn/examples
|
|
cp -r sample/sample-config-files/ $out/share/doc/openvpn/examples
|
|
cp -r sample/sample-keys/ $out/share/doc/openvpn/examples
|
|
cp -r sample/sample-scripts/ $out/share/doc/openvpn/examples
|
|
'';
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
NIX_LDFLAGS = optionalString stdenv.isLinux "-lsystemd-daemon"; # hacky
|
|
|
|
meta = {
|
|
description = "A robust and highly flexible tunneling application";
|
|
homepage = http://openvpn.net/;
|
|
license = "GPLv2";
|
|
maintainers = [ stdenv.lib.maintainers.viric ];
|
|
platforms = stdenv.lib.platforms.linux;
|
|
};
|
|
}
|