summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhexclover <47456195+hexclover@users.noreply.github.com>2023-11-27 11:29:51 +0800
committergithub-actions[bot] <github-actions[bot]@users.noreply.github.com>2023-11-29 07:25:42 +0000
commit26a5e1fece8836fd33fdd0b2a13dea89bdcc97aa (patch)
treef8c01fe3a2eb95006af2701ebb261084fd412304
parentmininet: 2.3.0 -> 2.3.1b4 (diff)
downloadnixpkgs-origin/backport-270344-to-release-23.11.tar.gz
nixos/mininet: wrap with mininet in PYTHONPATH and ifconfig in PATHorigin/backport-270344-to-release-23.11
(cherry picked from commit 4e6fc83b980ebd91d7cb3b24e5a2927f1d158520)
-rw-r--r--nixos/modules/programs/mininet.nix33
1 files changed, 23 insertions, 10 deletions
diff --git a/nixos/modules/programs/mininet.nix b/nixos/modules/programs/mininet.nix
index 02272729d233..01ffd811e70e 100644
--- a/nixos/modules/programs/mininet.nix
+++ b/nixos/modules/programs/mininet.nix
@@ -5,26 +5,39 @@
with lib;
let
- cfg = config.programs.mininet;
+ cfg = config.programs.mininet;
- generatedPath = with pkgs; makeSearchPath "bin" [
- iperf ethtool iproute2 socat
+ telnet = pkgs.runCommand "inetutils-telnet"
+ { }
+ ''
+ mkdir -p $out/bin
+ ln -s ${pkgs.inetutils}/bin/telnet $out/bin
+ '';
+
+ generatedPath = with pkgs; makeSearchPath "bin" [
+ iperf
+ ethtool
+ iproute2
+ socat
+ # mn errors out without a telnet binary
+ # pkgs.inetutils brings an undesired ifconfig into PATH see #43105
+ nettools
+ telnet
];
- pyEnv = pkgs.python.withPackages(ps: [ ps.mininet-python ]);
+ pyEnv = pkgs.python3.withPackages (ps: [ ps.mininet-python ]);
mnexecWrapped = pkgs.runCommand "mnexec-wrapper"
- { nativeBuildInputs = [ pkgs.makeWrapper pkgs.pythonPackages.wrapPython ]; }
+ { nativeBuildInputs = [ pkgs.makeWrapper pkgs.python3Packages.wrapPython ]; }
''
makeWrapper ${pkgs.mininet}/bin/mnexec \
$out/bin/mnexec \
--prefix PATH : "${generatedPath}"
- ln -s ${pyEnv}/bin/mn $out/bin/mn
-
- # mn errors out without a telnet binary
- # pkgs.inetutils brings an undesired ifconfig into PATH see #43105
- ln -s ${pkgs.inetutils}/bin/telnet $out/bin/telnet
+ makeWrapper ${pyEnv}/bin/mn \
+ $out/bin/mn \
+ --prefix PYTHONPATH : "${pyEnv}/${pyEnv.sitePackages}" \
+ --prefix PATH : "${generatedPath}"
'';
in
{