nix-configs

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

atlas.nix (2892B)


      1 # Desktop
      2 
      3 { config, pkgs, lib, machine, username, fullname, domain, email, sshkey, timezone, sshport, privatekey, matrixuser, matrixserver, ... }:
      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 = "atlas";
     12 
     13   imports = [
     14     (import "${home-manager}/nixos")
     15     ../common/audio.nix
     16     (import ../common/autologin.nix {inherit username;})
     17     (import ../common/devel.nix {inherit pkgs;})
     18     ../common/dhcp.nix
     19     ../common/flakes.nix
     20     ../common/fonts.nix
     21     ../common/garbage.nix
     22     (import ../common/hyprland.nix {inherit pkgs username;})
     23     (import ../common/locale.nix {inherit timezone;})
     24     ../common/mount-drives.nix
     25     ../common/nfs.nix
     26     ../common/packages.nix
     27     ../common/steam.nix
     28     (import ../common/ssh.nix {inherit username sshkey sshport;})
     29     (import ../common/syncthing.nix {inherit config pkgs username;})
     30     (import ../common/user.nix {inherit config pkgs username fullname;})
     31     (import ../common/ydotool.nix {inherit pkgs username;})
     32     ../scripts/ctimerename.nix
     33     ../scripts/duupmove.nix
     34     ../scripts/xdb.nix
     35     (import ../scripts/vidyascape.nix {inherit pkgs;})
     36     (import ../scripts/restic.nix {inherit pkgs;})
     37   ];
     38   home-manager = {
     39     backupFileExtension = "hm-bak";
     40     users.${username} = {pkgs, ...}: {
     41       imports = [
     42         ../home/alacritty.nix
     43         ../home/cursor.nix
     44         ../home/espanso.nix
     45         ../home/firefox.nix
     46         (import ../home/fish.nix {inherit pkgs domain;})
     47         (import ../home/git.nix {inherit fullname email;})
     48         ../home/htop.nix
     49         ../home/hyprland-numlock.nix
     50         ../home/hyprland.nix
     51         (import ../home/iamb.nix {inherit matrixuser matrixserver;})
     52         ../home/lf.nix
     53         ../home/mpv.nix
     54         ../home/neovim.nix
     55         (import ../home/newsboat.nix {inherit pkgs domain username;})
     56         (import ../home/rbw.nix {inherit pkgs domain email;})
     57         (import ../home/ssh.nix {inherit domain username sshport privatekey;})
     58         ../home/tofi.nix
     59       ];
     60       home.stateVersion = "24.11";
     61     };
     62   };
     63 
     64   # Hardware and system
     65   boot = {
     66     initrd = {
     67       availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
     68       kernelModules = [ ];
     69     };
     70     kernelModules = [ "kvm-intel" ];
     71     extraModulePackages = [ ];
     72     loader = {
     73       systemd-boot.enable = true;
     74       efi.canTouchEfiVariables = true;
     75     };
     76   };
     77   hardware.graphics = {
     78     enable = true;
     79     enable32Bit = true;
     80     };
     81   hardware.firmware = [ pkgs.linux-firmware ];
     82   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
     83   hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
     84 
     85   # Packages
     86   environment.systemPackages = with pkgs; [
     87     ntfs3g
     88     glib
     89   ];
     90 
     91   system.stateVersion = "24.11"; # Did you read the comment?
     92 
     93 }