configuration.nix

Branches > main > e32da24 > files / nixos / machines / pc / configuration.nix

{ config, pkgs, callPackage, ... }:

{
  imports = [
    ./hardware-configuration.nix
    (import ../../modules/base.nix {inherit pkgs;})
    (import ../../modules/i3.nix {inherit pkgs;})
    (import ../../modules/bluetooth.nix {inherit pkgs;})
  ];

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

  home-manager.backupFileExtension = "backup-home";

  networking.hostName = "pc";

  hardware.nvidia = {
    modesetting.enable = true;
    open = true;
    nvidiaSettings = true;
    package = config.boot.kernelPackages.nvidiaPackages.stable;
  };

  hardware.graphics.enable = true;

  ## Disable SSH gui popup thing?
  programs.ssh.askPassword = "";
  programs.ssh.startAgent = true;

  services.udev.extraRules = ''
    SUBSYSTEM=="hidraw", ATTRS{idVendor}=="feed", ATTRS{idProduct}=="400d", MODE="0666"
  '';

  programs.nix-ld.enable = true;
  services.usbmuxd.enable = true;
  services.printing.enable = true;
  services.blueman.enable = true;

  users.users.grahp = {
    isNormalUser = true;
    description = "Grahp";
    extraGroups = ["networkmanager" "wheel" "dialout"];
    shell = pkgs.fish;
  };

  services.openssh = {
    enable = true;
  };

  programs.fish.enable = true;
  environment.shells = [pkgs.fish];
  programs.firefox.enable = true;

  programs.steam = {
    enable = true;
    remotePlay.openFirewall = true;
    dedicatedServer.openFirewall = true;
    localNetworkGameTransfers.openFirewall = true;
  };

  hardware.steam-hardware.enable = true;

  ## No touchy says the comment!
  system.stateVersion = "24.11";
}