nixfiles/hosts/nixos-wsl/configuration.nix

61 lines
1.4 KiB
Nix

{
pkgs,
config,
lib,
flakeConfig,
...
}: let
inherit (flakeConfig.nixfiles) vars;
in {
config = {
networking.hostName = "nixos-wsl";
nixfiles = {
profile.base.enable = true;
binfmt.enable = true;
};
wsl.interop.register = true;
users.users.${vars.username}.linger = true;
systemd.services = let
user = config.users.users.${vars.username};
mainUid = builtins.toString user.uid;
in {
# "user@${mainUid}" = {
# wantedBy = [ "multi-user.target" ];
# overrideStrategy = "asDropin";
# };
workaround-reisolate = {
serviceConfig = {
ExecStartPre = "${pkgs.coreutils}/bin/sleep 10";
ExecStart = "${pkgs.systemd}/bin/systemctl isolate --no-block default.target";
Type = "oneshot";
RemainAfterExit = true;
};
description = "WSL startup workaround";
wantedBy = ["default.target"];
};
};
networking.networkmanager.enable = false;
programs.gnupg.agent = {
enable = true;
pinentryPackage = pkgs.pinentry-qt;
};
fonts.packages = with pkgs; [
nerd-fonts.fira-code
noto-fonts
noto-fonts-cjk-sans
];
fileSystems."/mnt/wsl/instances/NixOS" = {
device = "/";
options = ["bind"];
};
# standard disclaimer don't change this for any reason whatsoever
system.stateVersion = "23.11";
};
}