{ lib, pkgs, config, inputs, ... }: let inherit (lib.modules) mkForce; in { imports = [ # keep-sorted start prefix_order=inputs,./ inputs.nixos-wsl.nixosModules.wsl ../nixos # keep-sorted end ]; config = { wsl = { enable = true; defaultUser = config.garden.system.mainUser; startMenuLaunchers = true; interop = { includePath = false; register = true; }; }; # disable features that don't work or don't make sense in WSL services = { smartd.enable = mkForce false; xserver.enable = mkForce false; openssh.enable = mkForce false; fail2ban.enable = mkForce false; # resolv.conf is managed by wsl resolved.enable = mkForce false; }; networking = { tcpcrypt.enable = mkForce false; # we don't really need this since windows manages this for us firewall.enable = mkForce false; }; security.apparmor.enable = mkForce false; # allow me to open files and links in Windows from WSL environment.variables.BROWSER = mkForce "wsl-open"; garden.packages = { inherit (pkgs) wsl-open; }; catppuccin.enable = mkForce false; }; }