nix-configs

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

arcadia.nix (2295B)


      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/fonts.nix
     21       ../common/garbage.nix
     22       (import ../common/emulators.nix {inherit pkgs;})
     23       (import ../common/hyprland.nix {inherit pkgs username;})
     24       (import ../common/kodi.nix {inherit pkgs username;})
     25       (import ../common/locale.nix {inherit config pkgs timezone;})
     26       ../common/mount-drives.nix
     27       ../common/nfs.nix
     28       ../common/packages.nix
     29       (import ../common/ssh.nix {inherit username sshkey sshport privatekey;})
     30       (import ../common/syncthing.nix {inherit config pkgs username;})
     31       (import ../common/user.nix {inherit config pkgs username fullname;})
     32       ../scripts/htpc-launcher.nix
     33     ];
     34   home-manager = {
     35     backupFileExtension = "hm-bak";
     36     users.${username} = { pkgs, ... }: {
     37     imports = [
     38       ../home/alacritty.nix
     39       (import ../home/fish.nix {inherit pkgs domain;})
     40       ../home/hyprland.nix
     41       (import ../home/kodi.nix {inherit username;})
     42       (import ../home/rclone.nix {inherit domain username sshport privatekey;})
     43       (import ../home/ssh.nix {inherit domain username sshport privatekey;})
     44     ];
     45     home.stateVersion = "24.11";
     46     };
     47   };
     48 
     49   # Hardware and system
     50   boot = {
     51     initrd = {
     52       availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
     53       kernelModules = [ ];
     54     };
     55     kernelModules = [ "kvm-intel" ];
     56     extraModulePackages = [ ];
     57     loader = {
     58       systemd-boot.enable = true;
     59       efi.canTouchEfiVariables = true;
     60     };
     61   };
     62   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
     63   hardware = {
     64     cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
     65     graphics = {
     66       enable = true;
     67       extraPackages = with pkgs; [ intel-media-driver libvdpau-va-gl vaapiIntel ];
     68     };
     69   };
     70 
     71   system.stateVersion = "24.11";
     72 
     73 }