{ pkgs, lib, config, ... }: { options.mods.containers = { enable = lib.mkEnableOption { default = false; description = "enables steam container"; }; }; imports = [ ./steam.nix ]; config = lib.mkIf config.mods.containers.enable { virtualisation.docker.enable = true; virtualisation.docker.rootless = { enable = true; setSocketVariable = true; }; networking.nat = { enable = true; internalInterfaces = [ "ve-+" ]; externalInterface = "enp0s31f6"; }; networking.networkmanager.unmanaged = [ "interface-name:ve-*" ]; # networking = { # bridges.br0.interfaces = [ "enp0s31f6" ]; # Adjust interface accordingly # # Get bridge-ip with DHCP # useDHCP = false; # interfaces."br0".useDHCP = true; # # Set bridge-ip static # interfaces."br0".ipv4.addresses = [{ # address = "192.168.1.171"; # prefixLength = 24; # }]; # defaultGateway = "192.168.1.1"; # nameservers = [ "192.168.1.1" ]; # }; # networking.firewall.allowedTCPPorts = [ 4713 6000 ]; # hardware.pulseaudio = { # enable = true; # systemWide = true; # support32Bit = true; # tcp = { enable = true; anonymousClients = { allowedIpRanges = ["127.0.0.1" "192.168.100.0/24"]; }; }; # }; environment.systemPackages = with pkgs; [ xorg.xhost ]; }; }