{ inputs, flake, self, }: { lib, pkgs, config, ... }: { imports = [ self.nixosModules.hectic ]; hectic = { archetype.base.enable = true; program.tmux.enable = lib.mkOverride 100 false; user.yukkop.enable = true; }; wsl.defaultUser = "yukkop"; # 16 GiB swap swapDevices = [{ device = "/var/lib/swapfile"; size = 16 * 1024; }]; users.groups.owner = {}; services.openssh = { enable = true; settings = { PasswordAuthentication = false; UseDns = true; X11Forwarding = false; PermitRootLogin = "no"; }; }; virtualisation.docker.enable = true; hardware.graphics.enable = true; console.keyMap = "us"; environment.systemPackages = with pkgs; [ ripgrep man-pages man-pages-posix man-db ffmpeg ]; documentation.dev.enable = true; documentation.man.man-db.enable = false; documentation.man.mandoc.enable = true; services.samba = { enable = true; settings = { sshfs = { path = "/home/yukkop/umbriel/vproxy"; browseable = true; "read only" = false; "guest ok" = true; }; }; }; networking.firewall.allowedTCPPorts = [ 139 445 ]; networking.firewall.allowedUDPPorts = [ 137 138 ]; fonts.packages = with pkgs; [ nerd-fonts.jetbrains-mono ]; environment.variables = { EDITOR = "nvim"; VISUAL = "nvim"; }; # WSL-local shell aliases programs.bash.shellAliases = { nrs = "sudo nixos-rebuild switch --flake /home/yukkop/pj/util.nix#wsl"; }; users.users.yukkop.shell = pkgs.zsh; # WSL: keep imperative stateVersion in the system module system.stateVersion = "25.05"; }