{ config, pkgs, ... }:

{
  imports = [
    ./hardware-configuration.nix
    ../modules/home-manager.nix
    ../modules/common.nix
    ../modules/users.nix
    ../modules/locales.nix
    ../modules/services.nix
    ../modules/programs.nix
    ../modules/gaming.nix
    ../modules/obs-studio.nix
    ../modules/garbage-collection.nix
    ../modules/printing.nix
    ../modules/docker.nix
    ../modules/matrix.nix
    ../modules/kdenlive.nix
    ../modules/audacity.nix
    ../modules/ollama.nix
    ../modules/wireguard.nix
    ../modules/qbittorrent.nix
    ../modules/gimp.nix
    ../modules/openscad.nix
    ../modules/bambu-studio-flatpak.nix
    ../modules/arduino-ide.nix
    ../modules/bitwarden.nix
    ../modules/vlc.nix
    ../modules/devenv.nix
    ../modules/btop.nix
    ./mtp-fix.nix
  ];

  boot.kernelPackages = pkgs.linuxPackages_latest;

  boot.loader.systemd-boot.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;

  networking.hostName = "gandalf";
  networking.networkmanager.enable = true;
  networking.nameservers = [
    "192.168.68.56"
    "1.1.1.1"
    "8.8.8.8"
  ];
  networking.firewall.enable = false;

  networking.interfaces.enp130s0.wakeOnLan.enable = true;
  networking.firewall.allowedUDPPorts = [ 9 ];

  services.xserver.videoDrivers = [ "nvidia" ];
  services.openssh.settings.X11Forwarding = true;

  hardware = {
    graphics.enable = true;

    nvidia.modesetting.enable = true;
    nvidia.open = true;
    nvidia.nvidiaSettings = true;
  };

  systemd.targets.sleep.enable = false;
  systemd.targets.suspend.enable = false;
  systemd.targets.hibernate.enable = false;
  systemd.targets.hybrid-sleep.enable = false;

  virtualisation.libvirtd.enable = true;

  system.stateVersion = "25.11"; # Did you read the comment?
}
