59 lines
1.3 KiB
Nix
59 lines
1.3 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
vars,
|
|
...
|
|
}: {
|
|
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";
|
|
};
|
|
}
|