diff options
author | Patryk Wychowaniec <wychowaniec.patryk@gmail.com> | 2020-06-05 12:57:18 +0200 |
---|---|---|
committer | Patryk Wychowaniec <wychowaniec.patryk@gmail.com> | 2020-06-05 16:37:31 +0200 |
commit | 72e80cdc54f33889d4bf7b38fa58bd2d459d14e6 (patch) | |
tree | c43d994abf3468f6bed7172d8928715375e95566 /pkgs/tools | |
parent | abb2f6038ce89fc88e99cbe3e06a2e36dcd2a9c0 (diff) | |
download | nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.tar nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.tar.gz nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.tar.bz2 nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.tar.lz nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.tar.xz nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.tar.zst nixlib-72e80cdc54f33889d4bf7b38fa58bd2d459d14e6.zip |
lxd: Add proper support for `nftables`
Diffstat (limited to 'pkgs/tools')
-rw-r--r-- | pkgs/tools/admin/lxd/default.nix | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/pkgs/tools/admin/lxd/default.nix b/pkgs/tools/admin/lxd/default.nix index f270576e684a..9da7e76657db 100644 --- a/pkgs/tools/admin/lxd/default.nix +++ b/pkgs/tools/admin/lxd/default.nix @@ -1,13 +1,21 @@ { stdenv, hwdata, pkgconfig, lxc, buildGoPackage, fetchurl , makeWrapper, acl, rsync, gnutar, xz, btrfs-progs, gzip, dnsmasq -, squashfsTools, iproute, iptables, ebtables, libcap, libco-canonical, dqlite -, raft-canonical, sqlite-replication, udev +, squashfsTools, iproute, iptables, ebtables, iptables-nftables-compat, libcap +, libco-canonical, dqlite, raft-canonical, sqlite-replication, udev , writeShellScriptBin, apparmor-profiles, apparmor-parser , criu , bash , installShellFiles +, nftablesSupport ? false }: +let + networkPkgs = if nftablesSupport then + [ iptables-nftables-compat ] + else + [ iptables ebtables ]; + +in buildGoPackage rec { pname = "lxd"; version = "4.1"; @@ -38,12 +46,14 @@ buildGoPackage rec { # test binaries, code generation rm $out/bin/{deps,macaroon-identity,generate} - wrapProgram $out/bin/lxd --prefix PATH : ${stdenv.lib.makeBinPath [ - acl rsync gnutar xz btrfs-progs gzip dnsmasq squashfsTools iproute iptables ebtables bash criu - (writeShellScriptBin "apparmor_parser" '' - exec '${apparmor-parser}/bin/apparmor_parser' -I '${apparmor-profiles}/etc/apparmor.d' "$@" - '') - ]} + wrapProgram $out/bin/lxd --prefix PATH : ${stdenv.lib.makeBinPath ( + networkPkgs + ++ [ acl rsync gnutar xz btrfs-progs gzip dnsmasq squashfsTools iproute bash criu ] + ++ [ (writeShellScriptBin "apparmor_parser" '' + exec '${apparmor-parser}/bin/apparmor_parser' -I '${apparmor-profiles}/etc/apparmor.d' "$@" + '') ] + ) + } installShellCompletion --bash go/src/github.com/lxc/lxd/scripts/bash/lxd-client ''; |