mirror of
				https://github.com/Jokiller230/puzzlevision.git
				synced 2025-10-31 13:50:04 +00:00 
			
		
		
		
	Initial commit
This commit is contained in:
		
							parent
							
								
									3123622c9e
								
							
						
					
					
						commit
						d7b67b87da
					
				
					 5 changed files with 354 additions and 0 deletions
				
			
		
							
								
								
									
										49
									
								
								flake.lock
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								flake.lock
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,49 @@ | ||||||
|  | { | ||||||
|  |   "nodes": { | ||||||
|  |     "home-manager": { | ||||||
|  |       "inputs": { | ||||||
|  |         "nixpkgs": [ | ||||||
|  |           "nixpkgs" | ||||||
|  |         ] | ||||||
|  |       }, | ||||||
|  |       "locked": { | ||||||
|  |         "lastModified": 1685599623, | ||||||
|  |         "narHash": "sha256-Tob4CMOVHue0D3RzguDBCtUmX5ji2PsdbQDbIOIKvsc=", | ||||||
|  |         "owner": "nix-community", | ||||||
|  |         "repo": "home-manager", | ||||||
|  |         "rev": "93db05480c0c0f30382d3e80779e8386dcb4f9dd", | ||||||
|  |         "type": "github" | ||||||
|  |       }, | ||||||
|  |       "original": { | ||||||
|  |         "owner": "nix-community", | ||||||
|  |         "ref": "release-23.05", | ||||||
|  |         "repo": "home-manager", | ||||||
|  |         "type": "github" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "nixpkgs": { | ||||||
|  |       "locked": { | ||||||
|  |         "lastModified": 1686431482, | ||||||
|  |         "narHash": "sha256-oPVQ/0YP7yC2ztNsxvWLrV+f0NQ2QAwxbrZ+bgGydEM=", | ||||||
|  |         "owner": "nixos", | ||||||
|  |         "repo": "nixpkgs", | ||||||
|  |         "rev": "d3bb401dcfc5a46ce51cdfb5762e70cc75d082d2", | ||||||
|  |         "type": "github" | ||||||
|  |       }, | ||||||
|  |       "original": { | ||||||
|  |         "owner": "nixos", | ||||||
|  |         "ref": "nixos-23.05", | ||||||
|  |         "repo": "nixpkgs", | ||||||
|  |         "type": "github" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "root": { | ||||||
|  |       "inputs": { | ||||||
|  |         "home-manager": "home-manager", | ||||||
|  |         "nixpkgs": "nixpkgs" | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  |   "root": "root", | ||||||
|  |   "version": 7 | ||||||
|  | } | ||||||
							
								
								
									
										51
									
								
								flake.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								flake.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,51 @@ | ||||||
|  | { | ||||||
|  |   description = "Your new nix config"; | ||||||
|  | 
 | ||||||
|  |   inputs = { | ||||||
|  |     # Nixpkgs | ||||||
|  |     nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05"; | ||||||
|  | 
 | ||||||
|  |     # Home manager | ||||||
|  |     home-manager.url = "github:nix-community/home-manager/release-23.05"; | ||||||
|  |     home-manager.inputs.nixpkgs.follows = "nixpkgs"; | ||||||
|  | 
 | ||||||
|  |     # TODO: Add any other flake you might need | ||||||
|  |     # hardware.url = "github:nixos/nixos-hardware"; | ||||||
|  | 
 | ||||||
|  |     # Shameless plug: looking for a way to nixify your themes and make | ||||||
|  |     # everything match nicely? Try nix-colors! | ||||||
|  |     # nix-colors.url = "github:misterio77/nix-colors"; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   outputs = { | ||||||
|  |     self, | ||||||
|  |     nixpkgs, | ||||||
|  |     home-manager, | ||||||
|  |     ... | ||||||
|  |   } @ inputs: let | ||||||
|  |     inherit (self) outputs; | ||||||
|  |   in { | ||||||
|  |     # NixOS configuration entrypoint | ||||||
|  |     # Available through 'nixos-rebuild --flake .#your-hostname' | ||||||
|  |     nixosConfigurations = { | ||||||
|  |       # FIXME replace with your hostname | ||||||
|  |       nixos = nixpkgs.lib.nixosSystem { | ||||||
|  |         specialArgs = {inherit inputs outputs;}; | ||||||
|  |         # > Our main nixos configuration file < | ||||||
|  |         modules = [./nixos/configuration.nix]; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     # Standalone home-manager configuration entrypoint | ||||||
|  |     # Available through 'home-manager --flake .#your-username@your-hostname' | ||||||
|  |     homeConfigurations = { | ||||||
|  |       # FIXME replace with your username@hostname | ||||||
|  |       "jo@nixos" = home-manager.lib.homeManagerConfiguration { | ||||||
|  |         pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance | ||||||
|  |         extraSpecialArgs = {inherit inputs outputs;}; | ||||||
|  |         # > Our main home-manager configuration file < | ||||||
|  |         modules = [./home-manager/home.nix]; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | } | ||||||
							
								
								
									
										60
									
								
								home-manager/home.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								home-manager/home.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,60 @@ | ||||||
|  | # This is your home-manager configuration file | ||||||
|  | # Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix) | ||||||
|  | { | ||||||
|  |   inputs, | ||||||
|  |   lib, | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|  |   # You can import other home-manager modules here | ||||||
|  |   imports = [ | ||||||
|  |     # If you want to use home-manager modules from other flakes (such as nix-colors): | ||||||
|  |     # inputs.nix-colors.homeManagerModule | ||||||
|  | 
 | ||||||
|  |     # You can also split up your configuration and import pieces of it here: | ||||||
|  |     # ./nvim.nix | ||||||
|  |   ]; | ||||||
|  | 
 | ||||||
|  |   nixpkgs = { | ||||||
|  |     # You can add overlays here | ||||||
|  |     overlays = [ | ||||||
|  |       # If you want to use overlays exported from other flakes: | ||||||
|  |       # neovim-nightly-overlay.overlays.default | ||||||
|  | 
 | ||||||
|  |       # Or define it inline, for example: | ||||||
|  |       # (final: prev: { | ||||||
|  |       #   hi = final.hello.overrideAttrs (oldAttrs: { | ||||||
|  |       #     patches = [ ./change-hello-to-hi.patch ]; | ||||||
|  |       #   }); | ||||||
|  |       # }) | ||||||
|  |     ]; | ||||||
|  |     # Configure your nixpkgs instance | ||||||
|  |     config = { | ||||||
|  |       # Disable if you don't want unfree packages | ||||||
|  |       allowUnfree = true; | ||||||
|  |       # Workaround for https://github.com/nix-community/home-manager/issues/2942 | ||||||
|  |       allowUnfreePredicate = _: true; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   # TODO: Set your username | ||||||
|  |   home = { | ||||||
|  |     username = "your-username"; | ||||||
|  |     homeDirectory = "/home/your-username"; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   # Add stuff for your user as you see fit: | ||||||
|  |   # programs.neovim.enable = true; | ||||||
|  |   # home.packages = with pkgs; [ steam ]; | ||||||
|  | 
 | ||||||
|  |   # Enable home-manager and git | ||||||
|  |   programs.home-manager.enable = true; | ||||||
|  |   programs.git.enable = true; | ||||||
|  | 
 | ||||||
|  |   # Nicely reload system units when changing configs | ||||||
|  |   systemd.user.startServices = "sd-switch"; | ||||||
|  | 
 | ||||||
|  |   # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion | ||||||
|  |   home.stateVersion = "23.05"; | ||||||
|  | } | ||||||
							
								
								
									
										154
									
								
								nixos/configuration.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										154
									
								
								nixos/configuration.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,154 @@ | ||||||
|  | { | ||||||
|  |   inputs, | ||||||
|  |   lib, | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|  |   # You can import other NixOS modules here | ||||||
|  |   imports = [ | ||||||
|  |     # If you want to use modules from other flakes (such as nixos-hardware): | ||||||
|  |     # inputs.hardware.nixosModules.common-cpu-amd | ||||||
|  |     # inputs.hardware.nixosModules.common-ssd | ||||||
|  | 
 | ||||||
|  |     # You can also split up your configuration and import pieces of it here: | ||||||
|  |     # ./users.nix | ||||||
|  | 
 | ||||||
|  |     # Import your generated (nixos-generate-config) hardware configuration | ||||||
|  |     ./hardware-configuration.nix | ||||||
|  |   ]; | ||||||
|  | 
 | ||||||
|  |   nixpkgs = { | ||||||
|  |     # You can add overlays here | ||||||
|  |     overlays = [ | ||||||
|  |       # If you want to use overlays exported from other flakes: | ||||||
|  |       # neovim-nightly-overlay.overlays.default | ||||||
|  |     ]; | ||||||
|  |     # Configure your nixpkgs instance | ||||||
|  |     config = { | ||||||
|  |       allowUnfree = true; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   nix = { | ||||||
|  |     # This will add each flake input as a registry | ||||||
|  |     # To make nix3 commands consistent with your flake | ||||||
|  |     registry = lib.mapAttrs (_: value: {flake = value;}) inputs; | ||||||
|  | 
 | ||||||
|  |     # This will additionally add your inputs to the system's legacy channels | ||||||
|  |     # Making legacy nix commands consistent as well, awesome! | ||||||
|  |     nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry; | ||||||
|  | 
 | ||||||
|  |     settings = { | ||||||
|  |       # Enable flakes and new 'nix' command | ||||||
|  |       experimental-features = "nix-command flakes"; | ||||||
|  |       # Deduplicate and optimize nix store | ||||||
|  |       auto-optimise-store = true; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   # Bootloader. | ||||||
|  |   boot.loader.systemd-boot.enable = true; | ||||||
|  |   boot.loader.efi.canTouchEfiVariables = true; | ||||||
|  | 
 | ||||||
|  |   networking.hostName = "nixos"; # Define your hostname. | ||||||
|  |   # networking.wireless.enable = true;  # Enables wireless support via wpa_supplicant. | ||||||
|  | 
 | ||||||
|  |   # Configure network proxy if necessary | ||||||
|  |   # networking.proxy.default = "http://user:password@proxy:port/"; | ||||||
|  |   # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; | ||||||
|  | 
 | ||||||
|  |   # Enable networking | ||||||
|  |   networking.networkmanager.enable = true; | ||||||
|  | 
 | ||||||
|  |   # Set your time zone. | ||||||
|  |   time.timeZone = "Europe/Berlin"; | ||||||
|  | 
 | ||||||
|  |   # Select internationalisation properties. | ||||||
|  |   i18n.defaultLocale = "en_US.UTF-8"; | ||||||
|  | 
 | ||||||
|  |   i18n.extraLocaleSettings = { | ||||||
|  |     LC_ADDRESS = "de_DE.UTF-8"; | ||||||
|  |     LC_IDENTIFICATION = "de_DE.UTF-8"; | ||||||
|  |     LC_MEASUREMENT = "de_DE.UTF-8"; | ||||||
|  |     LC_MONETARY = "de_DE.UTF-8"; | ||||||
|  |     LC_NAME = "de_DE.UTF-8"; | ||||||
|  |     LC_NUMERIC = "de_DE.UTF-8"; | ||||||
|  |     LC_PAPER = "de_DE.UTF-8"; | ||||||
|  |     LC_TELEPHONE = "de_DE.UTF-8"; | ||||||
|  |     LC_TIME = "de_DE.UTF-8"; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   # Enable the X11 windowing system. | ||||||
|  |   services.xserver.enable = true; | ||||||
|  | 
 | ||||||
|  |   # Enable the GNOME Desktop Environment. | ||||||
|  |   services.xserver.displayManager.gdm.enable = true; | ||||||
|  |   services.xserver.desktopManager.gnome.enable = true; | ||||||
|  | 
 | ||||||
|  |   # Configure keymap in X11 | ||||||
|  |   services.xserver = { | ||||||
|  |     layout = "de"; | ||||||
|  |     xkbVariant = ""; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   # Configure console keymap | ||||||
|  |   console.keyMap = "de"; | ||||||
|  | 
 | ||||||
|  |   # Enable CUPS to print documents. | ||||||
|  |   services.printing.enable = true; | ||||||
|  | 
 | ||||||
|  |   # Enable sound with pipewire. | ||||||
|  |   sound.enable = true; | ||||||
|  |   hardware.pulseaudio.enable = false; | ||||||
|  |   security.rtkit.enable = true; | ||||||
|  |   services.pipewire = { | ||||||
|  |     enable = true; | ||||||
|  |     alsa.enable = true; | ||||||
|  |     alsa.support32Bit = true; | ||||||
|  |     pulse.enable = true; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   # Enable touchpad support (enabled default in most desktopManager). | ||||||
|  |   # services.xserver.libinput.enable = true; | ||||||
|  | 
 | ||||||
|  |   # Define a user account. Don't forget to set a password with ‘passwd’. | ||||||
|  |   users.users = [ | ||||||
|  |     jo = { | ||||||
|  |       isNormalUser = true; | ||||||
|  |       description = "Jo"; | ||||||
|  |       extraGroups = [ "networkmanager" "wheel" ]; | ||||||
|  |       packages = with pkgs; [ | ||||||
|  |         discord | ||||||
|  |       ]; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     work = { | ||||||
|  |       isNormalUser = true; | ||||||
|  |       description = "Work"; | ||||||
|  |       extraGroups = [ "networkmanager" ]; | ||||||
|  |       packages = with pkgs; [ | ||||||
|  |         jetbrains.webstorm | ||||||
|  |         jetbrains.phpstorm | ||||||
|  |         teams-for-linux | ||||||
|  |       ]; | ||||||
|  |     }; | ||||||
|  |   ]; | ||||||
|  | 
 | ||||||
|  |   # List packages installed in system profile. To search, run: | ||||||
|  |   # $ nix search wget | ||||||
|  |   environment.systemPackages = with pkgs; [ | ||||||
|  |     # GNOME packages (extensions, themes, etc...) | ||||||
|  |     gnome.gnome-tweaks | ||||||
|  |     adw-gtk3 | ||||||
|  | 
 | ||||||
|  |     # Other packages | ||||||
|  |     nano | ||||||
|  |     vscodium | ||||||
|  |     firefox | ||||||
|  |     thunderbird | ||||||
|  |   ]; | ||||||
|  | 
 | ||||||
|  |   # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion | ||||||
|  |   system.stateVersion = "23.05"; | ||||||
|  | } | ||||||
							
								
								
									
										40
									
								
								nixos/hardware-configuration.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								nixos/hardware-configuration.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,40 @@ | ||||||
|  | # 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 = [ "xhci_pci" "vmd" "nvme" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; | ||||||
|  |   boot.initrd.kernelModules = [ ]; | ||||||
|  |   boot.kernelModules = [ "kvm-intel" ]; | ||||||
|  |   boot.extraModulePackages = [ ]; | ||||||
|  | 
 | ||||||
|  |   fileSystems."/" = | ||||||
|  |     { device = "/dev/disk/by-uuid/9469c51e-bfcf-4d70-88e8-96e3cec4fbda"; | ||||||
|  |       fsType = "ext4"; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |   fileSystems."/boot" = | ||||||
|  |     { device = "/dev/disk/by-uuid/7526-929F"; | ||||||
|  |       fsType = "vfat"; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |   swapDevices = | ||||||
|  |     [ { device = "/dev/disk/by-uuid/49ae48db-5d1e-421b-90c6-7e092847636c"; } | ||||||
|  |     ]; | ||||||
|  | 
 | ||||||
|  |   # 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.wlo1.useDHCP = lib.mkDefault true; | ||||||
|  | 
 | ||||||
|  |   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||||
|  |   powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; | ||||||
|  |   hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||||
|  | } | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue