nix-configs

Personal NixOS and home-manager configuration files
Log | Files | Refs

arcadia.nix (2269B)


      1 # HTPC
      2 
      3 { config, pkgs, lib, domain, machine, username, fullname, sshkey, sshport, timezone, privatekey, ... }:
      4 
      5 let
      6   home-manager = builtins.fetchTarball https://github.com/nix-community/home-manager/archive/master.tar.gz;
      7 in
      8 
      9 {
     10 
     11   networking.hostName = "arcadia";
     12 
     13   imports =
     14     [
     15       (import "${home-manager}/nixos") # Home-Manager
     16       ../common/audio.nix
     17       (import ../common/autologin.nix {inherit username;})
     18       ../common/dhcp.nix
     19       ../common/flakes.nix
     20       ../common/garbage.nix
     21       (import ../common/emulators.nix {inherit pkgs;})
     22       (import ../common/hyprland.nix {inherit pkgs username;})
     23       (import ../common/kodi.nix {inherit pkgs username;})
     24       (import ../common/locale.nix {inherit config pkgs timezone;})
     25       ../common/mount-drives.nix
     26       ../common/nfs.nix
     27       ../common/packages.nix
     28       (import ../common/ssh.nix {inherit username sshkey sshport privatekey;})
     29       (import ../common/syncthing.nix {inherit config pkgs username;})
     30       (import ../common/user.nix {inherit config pkgs username fullname;})
     31       ../scripts/htpc-launcher.nix
     32     ];
     33   home-manager = {
     34     backupFileExtension = "hm-bak";
     35     users.${username} = { pkgs, ... }: {
     36     imports = [
     37       ../home/alacritty.nix
     38       (import ../home/fish.nix {inherit pkgs domain;})
     39       ../home/hyprland.nix
     40       (import ../home/kodi.nix {inherit username;})
     41       (import ../home/rclone.nix {inherit domain username sshport privatekey;})
     42       (import ../home/ssh.nix {inherit domain username sshport privatekey;})
     43     ];
     44     home.stateVersion = "24.11";
     45     };
     46   };
     47 
     48   # Hardware and system
     49   boot = {
     50     initrd = {
     51       availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
     52       kernelModules = [ ];
     53     };
     54     kernelModules = [ "kvm-intel" ];
     55     extraModulePackages = [ ];
     56     loader = {
     57       systemd-boot.enable = true;
     58       efi.canTouchEfiVariables = true;
     59     };
     60   };
     61   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
     62   hardware = {
     63     cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
     64     graphics = {
     65       enable = true;
     66       extraPackages = with pkgs; [ intel-media-driver libvdpau-va-gl vaapiIntel ];
     67     };
     68   };
     69 
     70   system.stateVersion = "24.11";
     71 
     72 }