From 3aba73a291a923c7aa0d78ca9f4f1e221030b8ec Mon Sep 17 00:00:00 2001 From: Colin Date: Sun, 26 Jan 2025 01:19:00 +0000 Subject: [PATCH 1/2] vpnc: support cross compilation --- pkgs/by-name/vp/vpnc/package.nix | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/vp/vpnc/package.nix b/pkgs/by-name/vp/vpnc/package.nix index 3ffd36234aeb..1f886c731557 100644 --- a/pkgs/by-name/vp/vpnc/package.nix +++ b/pkgs/by-name/vp/vpnc/package.nix @@ -1,6 +1,8 @@ { lib, stdenv, + bash, + buildPackages, fetchFromGitHub, makeWrapper, pkg-config, @@ -24,7 +26,11 @@ stdenv.mkDerivation { fetchSubmodules = true; }; - nativeBuildInputs = [ makeWrapper ] ++ lib.optional (!opensslSupport) pkg-config; + nativeBuildInputs = [ + makeWrapper + perl + ] ++ lib.optional (!opensslSupport) pkg-config; + buildInputs = [ libgcrypt perl @@ -40,15 +46,25 @@ stdenv.mkDerivation { NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; }; - postPatch = '' - patchShebangs src/makeman.pl - ''; + postPatch = + '' + substituteInPlace src/vpnc-disconnect \ + --replace-fail /bin/sh ${lib.getExe' bash "sh"} + patchShebangs src/makeman.pl + '' + + lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + # manpage generation invokes the build vpnc, which must be emulating when cross compiling + substituteInPlace src/makeman.pl --replace-fail \ + '$vpnc --long-help' \ + '${stdenv.hostPlatform.emulator buildPackages} $vpnc --long-help' + ''; enableParallelBuilding = true; # Missing install depends: # install: target '...-vpnc-unstable-2021-11-04/share/doc/vpnc': No such file or directory # make: *** [Makefile:149: install-doc] Error 1 enableParallelInstalling = false; + strictDeps = true; meta = with lib; { homepage = "https://davidepucci.it/doc/vpnc/"; From 6d668a9717af70c0bc95cb062da24be7d5c4e54f Mon Sep 17 00:00:00 2001 From: Colin Date: Sun, 26 Jan 2025 01:28:46 +0000 Subject: [PATCH 2/2] networkmanager-vpnc: fix cross compilation --- pkgs/by-name/ne/networkmanager-vpnc/package.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ne/networkmanager-vpnc/package.nix b/pkgs/by-name/ne/networkmanager-vpnc/package.nix index 52f47d871199..76af39b9da20 100644 --- a/pkgs/by-name/ne/networkmanager-vpnc/package.nix +++ b/pkgs/by-name/ne/networkmanager-vpnc/package.nix @@ -35,12 +35,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkg-config file + glib ]; buildInputs = [ vpnc networkmanager - glib ] ++ lib.optionals withGnome [ gtk3 gtk4 @@ -55,6 +55,8 @@ stdenv.mkDerivation rec { "--enable-absolute-paths" ]; + strictDeps = true; + passthru = { updateScript = gnome.updateScript { packageName = pname;