many improvements
This commit is contained in:
		
							
								
								
									
										14
									
								
								hosts/yoga-7-pro/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								hosts/yoga-7-pro/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| Installed using | ||||
| ``` | ||||
| > sudo nixos-install --root /tmp/new-install/ --flake .#nyx --impure --no-root-passwd | ||||
| ``` | ||||
|  | ||||
| where `/tmp/new-install` was the moint point of the target FS. | ||||
|  | ||||
| The root user is effectively deactivated, hence the additional setup: | ||||
| - users are part of the `wheel` group | ||||
| - password needs to be set before first boot: | ||||
|     - `nix-enter --root /tmp/new-install` | ||||
|     - `passwd <username>` | ||||
|  | ||||
|  | ||||
							
								
								
									
										27
									
								
								hosts/yoga-7-pro/configuration.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								hosts/yoga-7-pro/configuration.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| # Edit this configuration file to define what should be installed on | ||||
| # your system. Help is available in the configuration.nix(5) man page, on | ||||
| # https://search.nixos.org/options and in the NixOS manual (`nixos-help`). | ||||
|  | ||||
| { config, lib, pkgs, ... }: | ||||
|  | ||||
| { | ||||
|  | ||||
|   boot.loader = { | ||||
|     systemd-boot.enable = true; | ||||
|     timeout = 0; | ||||
|     efi.canTouchEfiVariables = true; | ||||
|   }; | ||||
|  | ||||
|   # cause it is so inconveniently located | ||||
|   services.logind.powerKey = "ignore"; | ||||
|   services.logind.lidSwitch = "sleep"; | ||||
|   services.logind.lidSwitchDocked = "ignore"; | ||||
|  | ||||
|   # requires too many shenanigans so I just install using --no-root-passwd | ||||
|   # users.users.root.hashedPassword = "!"; | ||||
|  | ||||
|   nixpkgs.config.allowUnfree = true; | ||||
|  | ||||
|   # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . | ||||
|   system.stateVersion = "24.05"; # Did you read the comment? | ||||
| } | ||||
							
								
								
									
										37
									
								
								hosts/yoga-7-pro/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								hosts/yoga-7-pro/default.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,37 @@ | ||||
| { | ||||
|     config = { | ||||
|         nix-config = { | ||||
|             networking.hostName = "nyx"; | ||||
|  | ||||
|             userName = "remy"; | ||||
|         }; | ||||
|     }; | ||||
|  | ||||
|     # Merge the configuration and hardware configuration | ||||
|     imports = [ | ||||
|         ./configuration.nix | ||||
|         ./hardware-configuration.nix | ||||
|  | ||||
|         ../../modules/nixos/backup.nix | ||||
|         ../../modules/nixos/bluetooth.nix | ||||
|         ../../modules/nixos/flakes.nix | ||||
|         ../../modules/nixos/flatpak.nix | ||||
|         ../../modules/nixos/fonts.nix | ||||
|         ../../modules/nixos/hyprland.nix | ||||
|         ../../modules/nixos/language.nix | ||||
|         ../../modules/nixos/ld.nix | ||||
|         ../../modules/nixos/monitoring.nix | ||||
|         ../../modules/nixos/networking.nix | ||||
|         ../../modules/nixos/nh.nix | ||||
|         ../../modules/nixos/pipewire.nix | ||||
|         ../../modules/nixos/podman.nix | ||||
|         ../../modules/nixos/power.nix | ||||
|         ../../modules/nixos/stylix.nix | ||||
|         ../../modules/nixos/user.nix | ||||
|  | ||||
|         ../../utils/binary-cache.nix | ||||
|         ../../utils/garbage-collection.nix | ||||
|         ../../utils/unfree.nix | ||||
|     ]; | ||||
| } | ||||
|  | ||||
							
								
								
									
										59
									
								
								hosts/yoga-7-pro/hardware-configuration.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								hosts/yoga-7-pro/hardware-configuration.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,59 @@ | ||||
| # 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" "thunderbolt" "usb_storage" "sd_mod" ]; | ||||
|   boot.initrd.kernelModules = [ ]; | ||||
|   boot.kernelModules = [ "kvm-amd" ]; | ||||
|   boot.extraModulePackages = [ ]; | ||||
|  | ||||
|   fileSystems."/" = | ||||
|     { device = "/dev/disk/by-uuid/1ea0784c-4eeb-46f1-a0ae-f6b311b27bd1"; | ||||
|       fsType = "btrfs"; | ||||
|       options = [ "subvol=@" ]; | ||||
|     }; | ||||
|  | ||||
|   boot.initrd.luks.devices."luks-root" = { | ||||
|     device = "/dev/disk/by-uuid/8832c090-9ca7-4a9c-8cfd-cf43cb59b3d3"; | ||||
|     crypttabExtraOpts = [ "fido2-token=auto" ]; | ||||
|   }; | ||||
|  | ||||
|   fileSystems."/boot" = | ||||
|     { device = "/dev/disk/by-uuid/86C2-FD4D"; | ||||
|       fsType = "vfat"; | ||||
|       options = [ "fmask=0022" "dmask=0022" ]; | ||||
|     }; | ||||
|  | ||||
|   fileSystems."/home" = | ||||
|     { device = "/dev/disk/by-uuid/1ea0784c-4eeb-46f1-a0ae-f6b311b27bd1"; | ||||
|       fsType = "btrfs"; | ||||
|       options = [ "subvol=@home" ]; | ||||
|     }; | ||||
|  | ||||
|   # TODO - only enable this if the user remy exists | ||||
|   fileSystems."/home/${config.nix-config.userName}/scratch" = | ||||
|     { device = "/dev/disk/by-uuid/1ea0784c-4eeb-46f1-a0ae-f6b311b27bd1"; | ||||
|       fsType = "btrfs"; | ||||
|       options = [ "subvol=@scratch" ]; | ||||
|       # TODO make it owned by the user | ||||
|     }; | ||||
|  | ||||
|   swapDevices = [ ]; | ||||
|  | ||||
|   # 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.<interface>.useDHCP`. | ||||
|   networking.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.wireguard-home.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.wlp192s0.useDHCP = lib.mkDefault true; | ||||
|  | ||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
|   hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user