openfortivpn: allow config in /etc/openfortivpn
openfortivpn would look in the nix store for config files, which obviously doesn't work, so make it go to /etc/openfortivpn instead so we *can* configure it system-wide. Also add systemd units on Linux.
This commit is contained in:
parent
f4e6fecebc
commit
b55e4b764d
1 changed files with 29 additions and 15 deletions
|
@ -1,34 +1,48 @@
|
||||||
{ stdenv, fetchFromGitHub, autoreconfHook, openssl, ppp, pkgconfig }:
|
{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig
|
||||||
|
, openssl, ppp
|
||||||
|
, systemd ? null }:
|
||||||
|
|
||||||
with stdenv.lib;
|
let
|
||||||
|
withSystemd = stdenv.isLinux && !(systemd == null);
|
||||||
|
|
||||||
let repo = "openfortivpn";
|
in
|
||||||
version = "1.14.1";
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "openfortivpn";
|
||||||
in stdenv.mkDerivation {
|
version = "1.14.1";
|
||||||
name = "${repo}-${version}";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "adrienverge";
|
owner = "adrienverge";
|
||||||
inherit repo;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1r9lp19fmqx9dw33j5967ydijbnacmr80mqnhbbxyqiw4k5c10ds";
|
sha256 = "1r9lp19fmqx9dw33j5967ydijbnacmr80mqnhbbxyqiw4k5c10ds";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# we cannot write the config file to /etc and as we don't need the file, so drop it
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace Makefile.am \
|
||||||
|
--replace '$(DESTDIR)$(confdir)' /tmp
|
||||||
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||||
buildInputs = [ openssl ppp ];
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-Wno-error=unused-function";
|
buildInputs = [
|
||||||
|
openssl ppp
|
||||||
|
]
|
||||||
|
++ lib.optional withSystemd systemd;
|
||||||
|
|
||||||
configureFlags = [ "--with-pppd=${ppp}/bin/pppd" ];
|
configureFlags = [
|
||||||
|
"--sysconfdir=/etc"
|
||||||
|
"--with-pppd=${ppp}/bin/pppd"
|
||||||
|
]
|
||||||
|
++ lib.optional withSystemd "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system";
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
meta = {
|
meta = with stdenv.lib; {
|
||||||
description = "Client for PPP+SSL VPN tunnel services";
|
description = "Client for PPP+SSL VPN tunnel services";
|
||||||
homepage = "https://github.com/adrienverge/openfortivpn";
|
homepage = "https://github.com/adrienverge/openfortivpn";
|
||||||
license = stdenv.lib.licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
maintainers = [ stdenv.lib.maintainers.madjar ];
|
maintainers = with maintainers; [ madjar ];
|
||||||
platforms = with stdenv.lib.platforms; linux ++ darwin;
|
platforms = with platforms; linux ++ darwin;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue