diff --git a/hosts/Garand-Laptop/default.nix b/hosts/Garand-Laptop/default.nix new file mode 100644 index 0000000..b947be8 --- /dev/null +++ b/hosts/Garand-Laptop/default.nix @@ -0,0 +1,7 @@ +{ ... }: +{ + imports = [ + ./hardware.nix + ./host-packages.nix + ]; +} diff --git a/hosts/Garand-Laptop/hardware.nix b/hosts/Garand-Laptop/hardware.nix new file mode 100644 index 0000000..970637e --- /dev/null +++ b/hosts/Garand-Laptop/hardware.nix @@ -0,0 +1,47 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = ["nvme" "xhci_pci"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/a96dc5a2-e2bf-4725-a7be-6b9d2b020fa6"; + fsType = "ext4"; + }; + + boot.initrd.luks.devices."luks-9b24a6b5-14e7-4e50-bd1d-c1af7382027c".device = "/dev/disk/by-uuid/9b24a6b5-14e7-4e50-bd1d-c1af7382027c"; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/3D12-F697"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/f1c0ee39-01a9-4508-916a-978650d6c514";} + ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/hosts/Garand-Laptop/host-packages.nix b/hosts/Garand-Laptop/host-packages.nix new file mode 100644 index 0000000..589a3a8 --- /dev/null +++ b/hosts/Garand-Laptop/host-packages.nix @@ -0,0 +1,6 @@ +{ pkgs, ... }: +{ + environment.systemPackages = with pkgs; [ + # audacity + ]; +} diff --git a/hosts/Garand-Laptop/variables.nix b/hosts/Garand-Laptop/variables.nix new file mode 100644 index 0000000..dc3f361 --- /dev/null +++ b/hosts/Garand-Laptop/variables.nix @@ -0,0 +1,99 @@ +{ + # CPU Architecture + # Available options: "x86_64-linux", "aarch64-linux", etc. + system = "x86_64-linux"; + + # Host Configuration + host = "Garand-Laptop"; + username = "garand_plg"; + + # GPU Profile + # Available options: "amd", "nvidia", "nvidia-laptop", "intel", "vm" + profile = "amd"; + + # Git Configuration ( For Pulling Software Repos ) + gitUsername = "GarandPLG"; + gitEmail = "garandplg@garandplg.com"; + + # Hyprland Settings + # Examples: + # extraMonitorSettings = "monitor = Virtual-1,1920x1080@60,auto,1"; + # extraMonitorSettings = "monitor = HDMI-A-1,1920x1080@60,auto,1"; + # You can configure multiple monitors. + # Inside the quotes, create a new line for each monitor. + extraMonitorSettings = "monitor = eDP-1,1920x1080@60,auto,1"; + + # Waybar Settings + clock24h = true; + + # Program Options + # Set Default Browser (google-chrome-stable for google-chrome) + # This does NOT install your browser + # You need to install it by adding it to the `packages.nix` + # or as a flatpak + browser = "librewolf"; + + # Setting it here does not enable it. Kitty is installed by default + terminal = "kitty"; # Set Default System Terminal + + keyboardLayout = "pl"; + consoleKeyMap = "pl"; + + # For Nvidia Prime support + intelID = "PCI:1:0:0"; + nvidiaID = "PCI:0:2:0"; + + # Enable NFS + enableNFS = true; + + # Enable Printing Support + printEnable = false; + + # Themes, waybar and animation. + # Only uncomment your selection + # The others much be commented out. + + # Set Stylix Image + # This will set your color palette + # Default background + # Add new images to ~/garandos/wallpapers + stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg; + #stylixImage = ../../wallpapers/DW_Pacts.jpg; + #stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg; + #stylixImage = ../../wallpapers/fire-nation.jpg; + #stylixImage = ../../wallpapers/four-elements.jpg; + #stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg; + #stylixImage = ../../wallpapers/jablon.jpg; + #stylixImage = ../../wallpapers/rammstein-log-two.jpg; + #stylixImage = ../../wallpapers/rammstein-log-one.jpg; + #stylixImage = ../../wallpapers/rammstein-log-three.jpg; + #stylixImage = ../../wallpapers/rammstein-one.jpg; + + # Set Waybar + # Available Options: + waybarChoice = ../../modules/home/waybar/waybar-curved.nix; + #waybarChoice = ../../modules/home/waybar/waybar-ddubs.nix; + #waybarChoice = ../../modules/home/waybar/waybar-ddubs-2.nix; + #waybarChoice = ../../modules/home/waybar/waybar-simple.nix; + #waybarChoice = ../../modules/home/waybar/waybar-jerry.nix; + # Very colorful and bright colors + #waybarChoice = ../../modules/home/waybar/waybar-nekodyke.nix; + # DWM styled waybars from Matt at TheLinuxCast + #waybarChoice = ../../modules/home/waybar/waybar-dwm.nix; + #waybarChoice = ../../modules/home/waybar/waybar-dwm-2.nix; + + # Set Animation style + # Available options are: + # animations-def.nix (default) + # animations-end4.nix (end-4 project very fluid) + # animations-dynamic.nix (ml4w project) + # animations-moving.nix (ml4w project) + animChoice = ../../modules/home/hyprland/animations-def.nix; + #animChoice = ../../modules/home/hyprland/animations-end4.nix; + #animChoice = ../../modules/home/hyprland/animations-dynamic.nix; + #animChoice = ../../modules/home/hyprland/animations-moving.nix; + + # Set network hostId if required (needed for zfs) + # Otherwise leave as-is + hostId = "7bc04e61"; +}