{
  inputs,
  pkgs,
  lib,
  user,
  ...
}:
{
  modules = {
    fish.enable = true;
    stylix.enable = true;
  };
  imports = [
    inputs.nixos-wsl.nixosModules.default
  ];
  # rocmSupport = false;
  programs = {
    dconf.enable = true;
    ssh = {
      startAgent = true;
    };
  };
  fonts = {
    enableDefaultPackages = true;
    packages = with pkgs; [
      nerd-fonts.jetbrains-mono
      material-design-icons
      material-symbols
      googlesans-code
      # (inputs.font-patcher.lib.patchFont {
      #   font = pkgs.googlesans-code;
      #   name = "Google Sans Code Nerd Font";
      # })
      nerd-fonts.caskaydia-cove
      nerd-fonts.noto
      noto-fonts-cjk-sans
      noto-fonts-cjk-serif
    ];
    fontDir.enable = true;
  };
  networking.dhcpcd.enable = lib.mkOverride 0 false;
  boot.loader.grub.enable = lib.mkOverride 0 false;
  wsl = {
    enable = true;
    defaultUser = user;
    docker-desktop.enable = false;
    useWindowsDriver = true;
    startMenuLaunchers = true;
    usbip.enable = true;
  };
  nix.settings = {
    experimental-features = "nix-command flakes";
  };
  nixpkgs.config.allowUnsupportedSystem = true;
  systemd.services."user-runtime-dir@" = {
    overrideStrategy = "asDropin";
    unitConfig.ConditionPathExists = "!/run/user/%i";
  };
}
