forked from jan-leila/nix-config
		
	ran linter
This commit is contained in:
		
							parent
							
								
									5da0753b7c
								
							
						
					
					
						commit
						dcd5accea0
					
				
					 23 changed files with 372 additions and 309 deletions
				
			
		|  | @ -1,11 +1,9 @@ | ||||||
| { pkgs, ... }: | {pkgs, ...}: { | ||||||
| { |  | ||||||
|   imports = [ |   imports = [ | ||||||
|     ../common |     ../common | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   services = { |   services = { | ||||||
| 
 |  | ||||||
|     # Enable CUPS to print documents. |     # Enable CUPS to print documents. | ||||||
|     printing.enable = true; |     printing.enable = true; | ||||||
| 
 | 
 | ||||||
|  | @ -21,7 +19,7 @@ | ||||||
|       }; |       }; | ||||||
| 
 | 
 | ||||||
|       # Get rid of xTerm |       # Get rid of xTerm | ||||||
|       excludePackages = [ pkgs.xterm ]; |       excludePackages = [pkgs.xterm]; | ||||||
| 
 | 
 | ||||||
|       # Configure keymap in X11 |       # Configure keymap in X11 | ||||||
|       xkb = { |       xkb = { | ||||||
|  | @ -44,7 +42,6 @@ | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
|   # Enable sound with pipewire. |   # Enable sound with pipewire. | ||||||
|   hardware.pulseaudio.enable = false; |   hardware.pulseaudio.enable = false; | ||||||
|   security.rtkit.enable = true; |   security.rtkit.enable = true; | ||||||
|  |  | ||||||
|  | @ -1,11 +1,10 @@ | ||||||
| { pkgs, ... }: | {pkgs, ...}: { | ||||||
| { |  | ||||||
|   imports = [ |   imports = [ | ||||||
|       ../../users |     ../../users | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   nix.settings.experimental-features = [ "nix-command" "flakes" ]; |   nix.settings.experimental-features = ["nix-command" "flakes"]; | ||||||
|   nix.settings.trusted-users = [ "leyla" ]; |   nix.settings.trusted-users = ["leyla"]; | ||||||
| 
 | 
 | ||||||
|   # Enable networking |   # Enable networking | ||||||
|   networking.networkmanager.enable = true; |   networking.networkmanager.enable = true; | ||||||
|  | @ -32,10 +31,10 @@ | ||||||
|   services = { |   services = { | ||||||
|     openssh = { |     openssh = { | ||||||
|       enable = true; |       enable = true; | ||||||
|       ports = [ 22 ]; |       ports = [22]; | ||||||
|       settings = { |       settings = { | ||||||
|         PasswordAuthentication = false; |         PasswordAuthentication = false; | ||||||
|         AllowUsers = [ "leyla" ]; # Allows all users by default. Can be [ "user1" "user2" ] |         AllowUsers = ["leyla"]; # Allows all users by default. Can be [ "user1" "user2" ] | ||||||
|         UseDns = true; |         UseDns = true; | ||||||
|         X11Forwarding = false; |         X11Forwarding = false; | ||||||
|       }; |       }; | ||||||
|  | @ -47,7 +46,7 @@ | ||||||
|     defaultSopsFormat = "yaml"; |     defaultSopsFormat = "yaml"; | ||||||
|     gnupg.sshKeyPaths = []; |     gnupg.sshKeyPaths = []; | ||||||
| 
 | 
 | ||||||
|     age ={ |     age = { | ||||||
|       keyFile = "/var/lib/sops-nix/key.txt"; |       keyFile = "/var/lib/sops-nix/key.txt"; | ||||||
|       sshKeyPaths = []; |       sshKeyPaths = []; | ||||||
|       # generateKey = true; |       # generateKey = true; | ||||||
|  |  | ||||||
|  | @ -1,21 +1,40 @@ | ||||||
| { config, pkgs, ... }: |  | ||||||
| { | { | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|   imports = [ |   imports = [ | ||||||
|     ../common |     ../common | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   users.groups.jellyfin_media = { |   users = { | ||||||
|     members = ["jellyfin" "leyla" "ester" "eve"]; |     groups = { | ||||||
|   }; |       jellyfin_media = { | ||||||
|  |         members = ["jellyfin" "leyla" "ester" "eve"]; | ||||||
|  |       }; | ||||||
| 
 | 
 | ||||||
|   users.groups.jellyfin = { |       jellyfin = { | ||||||
|     members = ["jellyfin" "leyla"]; |         members = ["jellyfin" "leyla"]; | ||||||
|   }; |       }; | ||||||
| 
 | 
 | ||||||
|   users.users.jellyfin = { |       # forgejo = { | ||||||
|     uid = 2000; |       #   members = ["forgejo" "leyla"]; | ||||||
|     group = "jellyfin"; |       # }; | ||||||
|     isSystemUser = true; |     }; | ||||||
|  | 
 | ||||||
|  |     users = { | ||||||
|  |       jellyfin = { | ||||||
|  |         uid = 2000; | ||||||
|  |         group = "jellyfin"; | ||||||
|  |         isSystemUser = true; | ||||||
|  |       }; | ||||||
|  | 
 | ||||||
|  |       # forgejo = { | ||||||
|  |       #   uid = 2001; | ||||||
|  |       #   group = "forgejo"; | ||||||
|  |       #   isSystemUser = true; | ||||||
|  |       # }; | ||||||
|  |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   systemd.tmpfiles.rules = [ |   systemd.tmpfiles.rules = [ | ||||||
|  | @ -23,11 +42,14 @@ | ||||||
|     "d /home/jellyfin/media 775 jellyfin jellyfin_media -" |     "d /home/jellyfin/media 775 jellyfin jellyfin_media -" | ||||||
|     "d /home/jellyfin/config 750 jellyfin jellyfin -" |     "d /home/jellyfin/config 750 jellyfin jellyfin -" | ||||||
|     "d /home/jellyfin/cache 755 jellyfin jellyfin_media -" |     "d /home/jellyfin/cache 755 jellyfin jellyfin_media -" | ||||||
|  |     # "d /home/forgejo 750 forgejo forgejo -" | ||||||
|  |     # "d /home/forgejo/data 750 forgejo forgejo -" | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   services = let |   services = let | ||||||
|     jellyfinDomain = "jellyfin.jan-leila.com"; |     jellyfinDomain = "jellyfin.jan-leila.com"; | ||||||
|     headscaleDomain = "headscale.jan-leila.com"; |     headscaleDomain = "headscale.jan-leila.com"; | ||||||
|  |     # forgejoDomain = "forgejo.jan-leila.com"; | ||||||
|   in { |   in { | ||||||
|     nfs.server = { |     nfs.server = { | ||||||
|       enable = true; |       enable = true; | ||||||
|  | @ -59,6 +81,20 @@ | ||||||
|       openFirewall = false; |       openFirewall = false; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|  |     # TODO: figure out what needs to be here | ||||||
|  |     # forgejo = { | ||||||
|  |     #   enable = true; | ||||||
|  |     #   database.type = "postgres"; | ||||||
|  |     #   lfs.enable = true; | ||||||
|  |     #   settings = { | ||||||
|  |     #     server = { | ||||||
|  |     #       DOMAIN = forgejoDomain; | ||||||
|  |     #       HTTP_PORT = 8081; | ||||||
|  |     #     }; | ||||||
|  |     #     service.DISABLE_REGISTRATION = true; | ||||||
|  |     #   }; | ||||||
|  |     # }; | ||||||
|  | 
 | ||||||
|     nginx = { |     nginx = { | ||||||
|       enable = false; # TODO: enable this when you want to test all the configs |       enable = false; # TODO: enable this when you want to test all the configs | ||||||
|       virtualHosts = { |       virtualHosts = { | ||||||
|  | @ -66,20 +102,20 @@ | ||||||
|           forceSSL = true; |           forceSSL = true; | ||||||
|           enableACME = true; |           enableACME = true; | ||||||
|           locations."/" = { |           locations."/" = { | ||||||
|             proxyPass = |             proxyPass = "http://localhost:${toString config.services.headscale.port}"; | ||||||
|               "http://localhost:${toString config.services.headscale.port}"; |  | ||||||
|             proxyWebsockets = true; |             proxyWebsockets = true; | ||||||
|           }; |           }; | ||||||
|         }; |         }; | ||||||
|         ${jellyfinDomain} = { |         ${jellyfinDomain} = { | ||||||
|           forceSSL = true; |           forceSSL = true; | ||||||
|           enableACME = true; |           enableACME = true; | ||||||
|           locations."/" = { |           locations."/".proxyPass = "http://localhost:8096"; | ||||||
|             proxyPass = |  | ||||||
|               "http://localhost:8096"; |  | ||||||
|             proxyWebsockets = true; |  | ||||||
|           }; |  | ||||||
|         }; |         }; | ||||||
|  |         # ${forgejoDomain} = { | ||||||
|  |         #   forceSSL = true; | ||||||
|  |         #   enableACME = true; | ||||||
|  |         #   locations."/".proxyPass = "http://localhost:${toString config.services.forgejo.settings.server.HTTP_PORT}"; | ||||||
|  |         # }; | ||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
|  | @ -97,7 +133,7 @@ | ||||||
|     hybrid-sleep.enable = false; |     hybrid-sleep.enable = false; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   networking.firewall.allowedTCPPorts = [ 2049 ]; |   networking.firewall.allowedTCPPorts = [2049]; | ||||||
| 
 | 
 | ||||||
|   environment.systemPackages = [ |   environment.systemPackages = [ | ||||||
|     config.services.headscale.package |     config.services.headscale.package | ||||||
|  |  | ||||||
							
								
								
									
										82
									
								
								flake.nix
									
										
									
									
									
								
							
							
						
						
									
										82
									
								
								flake.nix
									
										
									
									
									
								
							|  | @ -30,46 +30,50 @@ | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   outputs = { self, nixpkgs, disko, nixos-hardware, ... }@inputs: |   outputs = { | ||||||
|     let |     self, | ||||||
|       forEachSystem = nixpkgs.lib.genAttrs [ |     nixpkgs, | ||||||
|         "aarch64-darwin" |     disko, | ||||||
|         "aarch64-linux" |     nixos-hardware, | ||||||
|         "x86_64-darwin" |     ... | ||||||
|         "x86_64-linux" |   } @ inputs: let | ||||||
|       ]; |     forEachSystem = nixpkgs.lib.genAttrs [ | ||||||
|       forEachPkgs = lambda: forEachSystem (system: lambda nixpkgs.legacyPackages.${system}); |       "aarch64-darwin" | ||||||
|     in |       "aarch64-linux" | ||||||
|     { |       "x86_64-darwin" | ||||||
|       packages = forEachPkgs (pkgs: import ./pkgs { inherit pkgs; }); |       "x86_64-linux" | ||||||
|  |     ]; | ||||||
|  |     forEachPkgs = lambda: forEachSystem (system: lambda nixpkgs.legacyPackages.${system}); | ||||||
|  |   in { | ||||||
|  |     packages = forEachPkgs (pkgs: import ./pkgs {inherit pkgs;}); | ||||||
| 
 | 
 | ||||||
|       nixosConfigurations = { |     nixosConfigurations = { | ||||||
|       	# Leyla Laptop |       # Leyla Laptop | ||||||
|         horizon = nixpkgs.lib.nixosSystem { |       horizon = nixpkgs.lib.nixosSystem { | ||||||
|           specialArgs = { inherit inputs; }; |         specialArgs = {inherit inputs;}; | ||||||
|           modules = [  |         modules = [ | ||||||
|             ./hosts/horizon/configuration.nix |           ./hosts/horizon/configuration.nix | ||||||
|             inputs.home-manager.nixosModules.default |           inputs.home-manager.nixosModules.default | ||||||
|             nixos-hardware.nixosModules.framework-11th-gen-intel |           nixos-hardware.nixosModules.framework-11th-gen-intel | ||||||
|           ]; |         ]; | ||||||
|         }; |       }; | ||||||
|         # Leyla Desktop |       # Leyla Desktop | ||||||
|         twilight = nixpkgs.lib.nixosSystem { |       twilight = nixpkgs.lib.nixosSystem { | ||||||
|           specialArgs = { inherit inputs; }; |         specialArgs = {inherit inputs;}; | ||||||
|           modules = [  |         modules = [ | ||||||
|             ./hosts/twilight/configuration.nix |           ./hosts/twilight/configuration.nix | ||||||
|             inputs.home-manager.nixosModules.default |           inputs.home-manager.nixosModules.default | ||||||
|           ]; |         ]; | ||||||
|         }; |       }; | ||||||
|         # NAS Service |       # NAS Service | ||||||
|         defiant = nixpkgs.lib.nixosSystem { |       defiant = nixpkgs.lib.nixosSystem { | ||||||
|           specialArgs = { inherit inputs; }; |         specialArgs = {inherit inputs;}; | ||||||
|           modules = [ |         modules = [ | ||||||
|             disko.nixosModules.disko |           disko.nixosModules.disko | ||||||
|             ./hosts/defiant/disko-config.nix |           ./hosts/defiant/disko-config.nix | ||||||
|             ./hosts/defiant/configuration.nix |           ./hosts/defiant/configuration.nix | ||||||
|           ]; |         ]; | ||||||
|         }; |  | ||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
|  |   }; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,15 +1,18 @@ | ||||||
| # server nas | # server nas | ||||||
| { config, pkgs, inputs, ... }: |  | ||||||
| { | { | ||||||
|   imports = |   config, | ||||||
|     [ |   pkgs, | ||||||
|       inputs.home-manager.nixosModules.default |   inputs, | ||||||
|       inputs.sops-nix.nixosModules.sops |   ... | ||||||
|  | }: { | ||||||
|  |   imports = [ | ||||||
|  |     inputs.home-manager.nixosModules.default | ||||||
|  |     inputs.sops-nix.nixosModules.sops | ||||||
| 
 | 
 | ||||||
|       ./hardware-configuration.nix |     ./hardware-configuration.nix | ||||||
| 
 | 
 | ||||||
|       ../../enviroments/server |     ../../enviroments/server | ||||||
|     ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   users.leyla.isThinUser = true; |   users.leyla.isThinUser = true; | ||||||
| 
 | 
 | ||||||
|  | @ -43,7 +46,7 @@ | ||||||
|       }; |       }; | ||||||
| 
 | 
 | ||||||
|       # Get rid of xTerm |       # Get rid of xTerm | ||||||
|       excludePackages = [ pkgs.xterm ]; |       excludePackages = [pkgs.xterm]; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| { lib, ... }: | {lib, ...}: let | ||||||
| let |  | ||||||
|   bootDisk = devicePath: { |   bootDisk = devicePath: { | ||||||
|     type = "disk"; |     type = "disk"; | ||||||
|     device = devicePath; |     device = devicePath; | ||||||
|  | @ -86,11 +85,13 @@ in { | ||||||
|                 # should this only mirror for this inital config with 3 drives we will used raidz2 for future configs??? |                 # should this only mirror for this inital config with 3 drives we will used raidz2 for future configs??? | ||||||
|                 mode = "mirror"; |                 mode = "mirror"; | ||||||
|                 members = [ |                 members = [ | ||||||
|                   "hd_13_tb_a" "hd_13_tb_b" "hd_13_tb_c" |                   "hd_13_tb_a" | ||||||
|  |                   "hd_13_tb_b" | ||||||
|  |                   "hd_13_tb_c" | ||||||
|                 ]; |                 ]; | ||||||
|               } |               } | ||||||
|             ]; |             ]; | ||||||
|             cache = [ ]; |             cache = []; | ||||||
|             # cache = [ "ssd_2_tb_a" ]; |             # cache = [ "ssd_2_tb_a" ]; | ||||||
|           }; |           }; | ||||||
|         }; |         }; | ||||||
|  | @ -133,4 +134,3 @@ in { | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| } | } | ||||||
| 
 |  | ||||||
|  |  | ||||||
|  | @ -1,9 +1,13 @@ | ||||||
| # Do not modify this file!  It was generated by ‘nixos-generate-config’ | # Do not modify this file!  It was generated by ‘nixos-generate-config’ | ||||||
| # and may be overwritten by future invocations.  Please make changes | # and may be overwritten by future invocations.  Please make changes | ||||||
| # to /etc/nixos/configuration.nix instead. | # to /etc/nixos/configuration.nix instead. | ||||||
| { config, lib, pkgs, modulesPath, ... }: |  | ||||||
| 
 |  | ||||||
| { | { | ||||||
|  |   config, | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   modulesPath, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|   imports = [ |   imports = [ | ||||||
|     (modulesPath + "/installer/scan/not-detected.nix") |     (modulesPath + "/installer/scan/not-detected.nix") | ||||||
|     ../hardware-common.nix |     ../hardware-common.nix | ||||||
|  | @ -11,15 +15,15 @@ | ||||||
| 
 | 
 | ||||||
|   boot = { |   boot = { | ||||||
|     initrd = { |     initrd = { | ||||||
|       availableKernelModules = [ "xhci_pci" "aacraid" "ahci" "usbhid" "usb_storage" "sd_mod" ]; |       availableKernelModules = ["xhci_pci" "aacraid" "ahci" "usbhid" "usb_storage" "sd_mod"]; | ||||||
|       kernelModules = [ ]; |       kernelModules = []; | ||||||
|     }; |     }; | ||||||
|     kernelModules = [ "kvm-amd" ]; |     kernelModules = ["kvm-amd"]; | ||||||
|     extraModulePackages = [ ]; |     extraModulePackages = []; | ||||||
| 
 | 
 | ||||||
|     supportedFilesystems = [ "zfs" ]; |     supportedFilesystems = ["zfs"]; | ||||||
| 
 | 
 | ||||||
|     zfs.extraPools = [ "zroot" ]; |     zfs.extraPools = ["zroot"]; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   # fileSystems."/" = |   # fileSystems."/" = | ||||||
|  | @ -27,7 +31,7 @@ | ||||||
|   #     fsType = "ext4"; |   #     fsType = "ext4"; | ||||||
|   #   }; |   #   }; | ||||||
| 
 | 
 | ||||||
|   swapDevices = [ ]; |   swapDevices = []; | ||||||
| 
 | 
 | ||||||
|   networking = { |   networking = { | ||||||
|     # Enables DHCP on each ethernet and wireless interface. In case of scripted networking |     # Enables DHCP on each ethernet and wireless interface. In case of scripted networking | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| { lib, ... }: | {lib, ...}: { | ||||||
| { |  | ||||||
|   options = { |   options = { | ||||||
|     hardware = { |     hardware = { | ||||||
|       piperMouse = { |       piperMouse = { | ||||||
|  |  | ||||||
|  | @ -1,15 +1,18 @@ | ||||||
| # leyla laptop | # leyla laptop | ||||||
| { config, pkgs, inputs, ... }: |  | ||||||
| { | { | ||||||
|   imports = |   config, | ||||||
|     [ |   pkgs, | ||||||
|       inputs.home-manager.nixosModules.default |   inputs, | ||||||
|       inputs.sops-nix.nixosModules.sops |   ... | ||||||
|  | }: { | ||||||
|  |   imports = [ | ||||||
|  |     inputs.home-manager.nixosModules.default | ||||||
|  |     inputs.sops-nix.nixosModules.sops | ||||||
| 
 | 
 | ||||||
|       ./hardware-configuration.nix |     ./hardware-configuration.nix | ||||||
| 
 | 
 | ||||||
|       ../../enviroments/client |     ../../enviroments/client | ||||||
|     ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   users = { |   users = { | ||||||
|     leyla.isFullUser = true; |     leyla.isFullUser = true; | ||||||
|  | @ -25,7 +28,7 @@ | ||||||
|       setSocketVariable = true; |       setSocketVariable = true; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
|   users.extraGroups.docker.members = [ "leyla" ]; |   users.extraGroups.docker.members = ["leyla"]; | ||||||
| 
 | 
 | ||||||
|   # Enable touchpad support (enabled default in most desktopManager). |   # Enable touchpad support (enabled default in most desktopManager). | ||||||
|   # services.xserver.libinput.enable = true; |   # services.xserver.libinput.enable = true; | ||||||
|  |  | ||||||
|  | @ -1,9 +1,13 @@ | ||||||
| # Do not modify this file!  It was generated by ‘nixos-generate-config’ | # Do not modify this file!  It was generated by ‘nixos-generate-config’ | ||||||
| # and may be overwritten by future invocations.  Please make changes | # and may be overwritten by future invocations.  Please make changes | ||||||
| # to /etc/nixos/configuration.nix instead. | # to /etc/nixos/configuration.nix instead. | ||||||
| { config, lib, pkgs, modulesPath, ... }: |  | ||||||
| 
 |  | ||||||
| { | { | ||||||
|  |   config, | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   modulesPath, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|   imports = [ |   imports = [ | ||||||
|     (modulesPath + "/installer/scan/not-detected.nix") |     (modulesPath + "/installer/scan/not-detected.nix") | ||||||
|     ../hardware-common.nix |     ../hardware-common.nix | ||||||
|  | @ -11,11 +15,11 @@ | ||||||
| 
 | 
 | ||||||
|   boot = { |   boot = { | ||||||
|     initrd = { |     initrd = { | ||||||
|       availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; |       availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"]; | ||||||
|       kernelModules = [ ]; |       kernelModules = []; | ||||||
|     }; |     }; | ||||||
|     kernelModules = [ "kvm-intel" "sg" ]; |     kernelModules = ["kvm-intel" "sg"]; | ||||||
|     extraModulePackages = [ ]; |     extraModulePackages = []; | ||||||
| 
 | 
 | ||||||
|     # Bootloader. |     # Bootloader. | ||||||
|     loader = { |     loader = { | ||||||
|  | @ -25,43 +29,39 @@ | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   fileSystems = { |   fileSystems = { | ||||||
|     "/" = |     "/" = { | ||||||
|       { device = "/dev/disk/by-uuid/866d422b-f816-4ad9-9846-791839cb9337"; |       device = "/dev/disk/by-uuid/866d422b-f816-4ad9-9846-791839cb9337"; | ||||||
|         fsType = "ext4"; |       fsType = "ext4"; | ||||||
|       }; |     }; | ||||||
| 
 | 
 | ||||||
|     "/boot" = |     "/boot" = { | ||||||
|       { device = "/dev/disk/by-uuid/E138-65B5"; |       device = "/dev/disk/by-uuid/E138-65B5"; | ||||||
|         fsType = "vfat"; |       fsType = "vfat"; | ||||||
|       }; |     }; | ||||||
| 
 | 
 | ||||||
|     "/mnt/leyla_home" = |     "/mnt/leyla_home" = { | ||||||
|       { |       device = "defiant:/home/leyla"; | ||||||
|         device = "defiant:/home/leyla"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "user" "noatime" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||||
|         options = [ "x-systemd.automount" "user" "noatime" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ]; |     }; | ||||||
|       }; |  | ||||||
| 
 | 
 | ||||||
|     "/mnt/eve_home" = |     "/mnt/eve_home" = { | ||||||
|       { |       device = "defiant:/home/eve"; | ||||||
|         device = "defiant:/home/eve"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||||
|         options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ]; |     }; | ||||||
|       }; |  | ||||||
| 
 | 
 | ||||||
|     "/mnt/ester_home" = |     "/mnt/ester_home" = { | ||||||
|       { |       device = "defiant:/home/ester"; | ||||||
|         device = "defiant:/home/ester"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||||
|         options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ]; |     }; | ||||||
|       }; |  | ||||||
| 
 | 
 | ||||||
|     "/mnt/users_home" = |     "/mnt/users_home" = { | ||||||
|       { |       device = "defiant:/home/users"; | ||||||
|         device = "defiant:/home/users"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||||
|         options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ]; |     }; | ||||||
|       }; |  | ||||||
| 
 | 
 | ||||||
|     # "/mnt/legacy_leyla_home" = |     # "/mnt/legacy_leyla_home" = | ||||||
|     #   { |     #   { | ||||||
|  | @ -87,9 +87,9 @@ | ||||||
| 
 | 
 | ||||||
|   services.cachefilesd.enable = true; |   services.cachefilesd.enable = true; | ||||||
| 
 | 
 | ||||||
|   swapDevices = |   swapDevices = [ | ||||||
|     [ { device = "/dev/disk/by-uuid/be98e952-a072-4c3a-8c12-69500b5a2fff"; } |     {device = "/dev/disk/by-uuid/be98e952-a072-4c3a-8c12-69500b5a2fff";} | ||||||
|     ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   networking = { |   networking = { | ||||||
|     useDHCP = lib.mkDefault true; |     useDHCP = lib.mkDefault true; | ||||||
|  | @ -99,7 +99,6 @@ | ||||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; |   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||||
|   powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; |   powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
|   hardware = { |   hardware = { | ||||||
|     graphics.enable = true; |     graphics.enable = true; | ||||||
|     cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; |     cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||||
|  |  | ||||||
|  | @ -1,15 +1,18 @@ | ||||||
| # leyla laptop | # leyla laptop | ||||||
| { config, pkgs, inputs, ... }: |  | ||||||
| { | { | ||||||
|   imports = |   config, | ||||||
|     [ |   pkgs, | ||||||
|       inputs.home-manager.nixosModules.default |   inputs, | ||||||
|       inputs.sops-nix.nixosModules.sops |   ... | ||||||
|  | }: { | ||||||
|  |   imports = [ | ||||||
|  |     inputs.home-manager.nixosModules.default | ||||||
|  |     inputs.sops-nix.nixosModules.sops | ||||||
| 
 | 
 | ||||||
|       ./hardware-configuration.nix |     ./hardware-configuration.nix | ||||||
| 
 | 
 | ||||||
|       ../../enviroments/client |     ../../enviroments/client | ||||||
|     ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   users = { |   users = { | ||||||
|     leyla = { |     leyla = { | ||||||
|  |  | ||||||
|  | @ -1,9 +1,13 @@ | ||||||
| # Do not modify this file!  It was generated by ‘nixos-generate-config’ | # Do not modify this file!  It was generated by ‘nixos-generate-config’ | ||||||
| # and may be overwritten by future invocations.  Please make changes | # and may be overwritten by future invocations.  Please make changes | ||||||
| # to /etc/nixos/configuration.nix instead. | # to /etc/nixos/configuration.nix instead. | ||||||
| { config, lib, pkgs, modulesPath, ... }: |  | ||||||
| 
 |  | ||||||
| { | { | ||||||
|  |   config, | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   modulesPath, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|   imports = [ |   imports = [ | ||||||
|     (modulesPath + "/installer/scan/not-detected.nix") |     (modulesPath + "/installer/scan/not-detected.nix") | ||||||
|     ../hardware-common.nix |     ../hardware-common.nix | ||||||
|  | @ -11,11 +15,11 @@ | ||||||
| 
 | 
 | ||||||
|   boot = { |   boot = { | ||||||
|     initrd = { |     initrd = { | ||||||
|       availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ]; |       availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"]; | ||||||
|       kernelModules = [ ]; |       kernelModules = []; | ||||||
|     }; |     }; | ||||||
|     kernelModules = [ "kvm-amd" "sg" ]; |     kernelModules = ["kvm-amd" "sg"]; | ||||||
|     extraModulePackages = [ ]; |     extraModulePackages = []; | ||||||
| 
 | 
 | ||||||
|     # Bootloader. |     # Bootloader. | ||||||
|     loader = { |     loader = { | ||||||
|  | @ -33,40 +37,37 @@ | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   fileSystems = { |   fileSystems = { | ||||||
|     "/" = |     "/" = { | ||||||
|       { device = "/dev/disk/by-uuid/8be49c65-2b57-48f1-b74d-244d26061adb"; |       device = "/dev/disk/by-uuid/8be49c65-2b57-48f1-b74d-244d26061adb"; | ||||||
|         fsType = "ext4"; |       fsType = "ext4"; | ||||||
|       }; |     }; | ||||||
| 
 | 
 | ||||||
|     "/boot" = |     "/boot" = { | ||||||
|       { device = "/dev/disk/by-uuid/3006-3867"; |       device = "/dev/disk/by-uuid/3006-3867"; | ||||||
|         fsType = "vfat"; |       fsType = "vfat"; | ||||||
|         options = [ "fmask=0022" "dmask=0022" ]; |       options = ["fmask=0022" "dmask=0022"]; | ||||||
|       }; |     }; | ||||||
| 
 | 
 | ||||||
|     "/mnt/leyla_home" = |     "/mnt/leyla_home" = { | ||||||
|       { |       device = "server.arpa:/home/leyla"; | ||||||
|         device = "server.arpa:/home/leyla"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||||
|         options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ]; |     }; | ||||||
|       }; |  | ||||||
| 
 | 
 | ||||||
|     "/mnt/share_home" = |     "/mnt/share_home" = { | ||||||
|       { |       device = "server.arpa:/home/share"; | ||||||
|         device = "server.arpa:/home/share"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||||
|         options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ]; |     }; | ||||||
|       }; |  | ||||||
| 
 | 
 | ||||||
|     "/mnt/docker_home" = |     "/mnt/docker_home" = { | ||||||
|       { |       device = "server.arpa:/home/docker"; | ||||||
|         device = "server.arpa:/home/docker"; |       fsType = "nfs"; | ||||||
|         fsType = "nfs"; |       options = ["x-systemd.automount" "noauto" "x-systemd.idle-timeout=600"]; | ||||||
|         options = [ "x-systemd.automount" "noauto" "x-systemd.idle-timeout=600" ]; |     }; | ||||||
|       }; |  | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   swapDevices = [ ]; |   swapDevices = []; | ||||||
| 
 | 
 | ||||||
|   networking = { |   networking = { | ||||||
|     # Enables DHCP on each ethernet and wireless interface. In case of scripted networking |     # Enables DHCP on each ethernet and wireless interface. In case of scripted networking | ||||||
|  | @ -112,7 +113,7 @@ | ||||||
|       open = false; |       open = false; | ||||||
| 
 | 
 | ||||||
|       # Enable the Nvidia settings menu, |       # Enable the Nvidia settings menu, | ||||||
|     # accessible via `nvidia-settings`. |       # accessible via `nvidia-settings`. | ||||||
|       nvidiaSettings = true; |       nvidiaSettings = true; | ||||||
| 
 | 
 | ||||||
|       # Optionally, you may need to select the appropriate driver version for your specific GPU. |       # Optionally, you may need to select the appropriate driver version for your specific GPU. | ||||||
|  | @ -122,4 +123,3 @@ | ||||||
|     cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; |     cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||||
|   }; |   }; | ||||||
| } | } | ||||||
| 
 |  | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| _: | _: { | ||||||
| { |  | ||||||
|   # nixpkgs.overlays = [ |   # nixpkgs.overlays = [ | ||||||
|   #   (self: super: { |   #   (self: super: { | ||||||
|   #     # idea is too out of date for android gradle things |   #     # idea is too out of date for android gradle things | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| _: | _: { | ||||||
| { |  | ||||||
|   # nixpkgs.overlays = [ |   # nixpkgs.overlays = [ | ||||||
|   #   (self: super: { |   #   (self: super: { | ||||||
|   #     # ui is broken on 1.84 |   #     # ui is broken on 1.84 | ||||||
|  |  | ||||||
|  | @ -1,4 +1,2 @@ | ||||||
| _: | _: { | ||||||
| { |  | ||||||
|    |  | ||||||
| } | } | ||||||
|  | @ -1,2 +1 @@ | ||||||
| _: | _: {} | ||||||
| {} |  | ||||||
|  |  | ||||||
|  | @ -1,8 +1,7 @@ | ||||||
| { inputs, ... }: | {inputs, ...}: { | ||||||
| { |   imports = [./leyla ./ester ./eve]; | ||||||
|   imports = [ ./leyla ./ester ./eve ]; |  | ||||||
| 
 | 
 | ||||||
|   users.mutableUsers = false; |   users.mutableUsers = false; | ||||||
| 
 | 
 | ||||||
|   home-manager.extraSpecialArgs = { inherit inputs; }; |   home-manager.extraSpecialArgs = {inherit inputs;}; | ||||||
| } | } | ||||||
|  | @ -1,8 +1,11 @@ | ||||||
| { lib, config, pkgs, ... }: |  | ||||||
| let |  | ||||||
|   cfg = config.users.ester; |  | ||||||
| in |  | ||||||
| { | { | ||||||
|  |   lib, | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   cfg = config.users.ester; | ||||||
|  | in { | ||||||
|   options.users.ester = { |   options.users.ester = { | ||||||
|     isFullUser = lib.mkEnableOption "ester"; |     isFullUser = lib.mkEnableOption "ester"; | ||||||
|   }; |   }; | ||||||
|  | @ -25,9 +28,10 @@ in | ||||||
|       } |       } | ||||||
| 
 | 
 | ||||||
|       ( |       ( | ||||||
|         if cfg.isFullUser then { |         if cfg.isFullUser | ||||||
|  |         then { | ||||||
|           isNormalUser = true; |           isNormalUser = true; | ||||||
|           extraGroups = [ "networkmanager" "users" ]; |           extraGroups = ["networkmanager" "users"]; | ||||||
| 
 | 
 | ||||||
|           hashedPasswordFile = config.sops.secrets."passwords/ester".path; |           hashedPasswordFile = config.sops.secrets."passwords/ester".path; | ||||||
| 
 | 
 | ||||||
|  | @ -36,7 +40,8 @@ in | ||||||
|             bitwarden |             bitwarden | ||||||
|             discord |             discord | ||||||
|           ]; |           ]; | ||||||
|         } else { |         } | ||||||
|  |         else { | ||||||
|           isSystemUser = true; |           isSystemUser = true; | ||||||
|         } |         } | ||||||
|       ) |       ) | ||||||
|  |  | ||||||
|  | @ -1,8 +1,11 @@ | ||||||
| { lib, config, pkgs, ... }: |  | ||||||
| let |  | ||||||
|   cfg = config.users.eve; |  | ||||||
| in |  | ||||||
| { | { | ||||||
|  |   lib, | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   cfg = config.users.eve; | ||||||
|  | in { | ||||||
|   options.users.eve = { |   options.users.eve = { | ||||||
|     isFullUser = lib.mkEnableOption "eve"; |     isFullUser = lib.mkEnableOption "eve"; | ||||||
|   }; |   }; | ||||||
|  | @ -25,9 +28,10 @@ in | ||||||
|       } |       } | ||||||
| 
 | 
 | ||||||
|       ( |       ( | ||||||
|         if cfg.isFullUser then { |         if cfg.isFullUser | ||||||
|  |         then { | ||||||
|           isNormalUser = true; |           isNormalUser = true; | ||||||
|           extraGroups = [ "networkmanager" "users" ]; |           extraGroups = ["networkmanager" "users"]; | ||||||
| 
 | 
 | ||||||
|           hashedPasswordFile = config.sops.secrets."passwords/eve".path; |           hashedPasswordFile = config.sops.secrets."passwords/eve".path; | ||||||
| 
 | 
 | ||||||
|  | @ -38,7 +42,8 @@ in | ||||||
|             makemkv |             makemkv | ||||||
|             signal-desktop |             signal-desktop | ||||||
|           ]; |           ]; | ||||||
|         } else { |         } | ||||||
|  |         else { | ||||||
|           isSystemUser = true; |           isSystemUser = true; | ||||||
|         } |         } | ||||||
|       ) |       ) | ||||||
|  |  | ||||||
|  | @ -1,9 +1,12 @@ | ||||||
| { lib, config, pkgs, ... }: |  | ||||||
| let |  | ||||||
|   cfg = config.users.leyla; |  | ||||||
| in |  | ||||||
| { | { | ||||||
|   imports =[ |   lib, | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   cfg = config.users.leyla; | ||||||
|  | in { | ||||||
|  |   imports = [ | ||||||
|     ./packages.nix |     ./packages.nix | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|  | @ -31,12 +34,13 @@ in | ||||||
|       } |       } | ||||||
| 
 | 
 | ||||||
|       ( |       ( | ||||||
|         if (cfg.isFullUser || cfg.isThinUser) then { |         if (cfg.isFullUser || cfg.isThinUser) | ||||||
|  |         then { | ||||||
|           isNormalUser = true; |           isNormalUser = true; | ||||||
|           extraGroups = lib.mkMerge [ |           extraGroups = lib.mkMerge [ | ||||||
|             ["networkmanager" "wheel" "users"] |             ["networkmanager" "wheel" "users"] | ||||||
|             ( |             ( | ||||||
|               lib.mkIf (!cfg.isThinUser) [ "adbusers" ] |               lib.mkIf (!cfg.isThinUser) ["adbusers"] | ||||||
|             ) |             ) | ||||||
|           ]; |           ]; | ||||||
| 
 | 
 | ||||||
|  | @ -48,7 +52,8 @@ in | ||||||
|               "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKBiZkg1c2aaNHiieBX4cEziqvJVj9pcDfzUrKU/mO0I leyla@twilight" |               "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKBiZkg1c2aaNHiieBX4cEziqvJVj9pcDfzUrKU/mO0I leyla@twilight" | ||||||
|             ]; |             ]; | ||||||
|           }; |           }; | ||||||
|         } else { |         } | ||||||
|  |         else { | ||||||
|           isSystemUser = true; |           isSystemUser = true; | ||||||
|         } |         } | ||||||
|       ) |       ) | ||||||
|  |  | ||||||
|  | @ -1,6 +1,8 @@ | ||||||
| { config, pkgs, ... }: |  | ||||||
| 
 |  | ||||||
| { | { | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: { | ||||||
|   # Home Manager needs a bit of information about you and the paths it should |   # Home Manager needs a bit of information about you and the paths it should | ||||||
|   # manage. |   # manage. | ||||||
|   home = { |   home = { | ||||||
|  | @ -73,11 +75,11 @@ | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   programs = { |   programs = { | ||||||
|   # Let Home Manager install and manage itself. |     # Let Home Manager install and manage itself. | ||||||
|     home-manager.enable = true; |     home-manager.enable = true; | ||||||
|     git = { |     git = { | ||||||
|       enable = true; |       enable = true; | ||||||
|       userName  = "Leyla Becker"; |       userName = "Leyla Becker"; | ||||||
|       userEmail = "git@jan-leila.com"; |       userEmail = "git@jan-leila.com"; | ||||||
|       extraConfig.init.defaultBranch = "main"; |       extraConfig.init.defaultBranch = "main"; | ||||||
|     }; |     }; | ||||||
|  | @ -89,18 +91,18 @@ | ||||||
|       "org/gnome/desktop/interface".color-scheme = "prefer-dark"; |       "org/gnome/desktop/interface".color-scheme = "prefer-dark"; | ||||||
| 
 | 
 | ||||||
|       "org/gnome/shell" = { |       "org/gnome/shell" = { | ||||||
|           disable-user-extensions = false; # enables user extensions |         disable-user-extensions = false; # enables user extensions | ||||||
|           enabled-extensions = [ |         enabled-extensions = [ | ||||||
|             # Put UUIDs of extensions that you want to enable here. |           # Put UUIDs of extensions that you want to enable here. | ||||||
|             # If the extension you want to enable is packaged in nixpkgs, |           # If the extension you want to enable is packaged in nixpkgs, | ||||||
|             # you can easily get its UUID by accessing its extensionUuid |           # you can easily get its UUID by accessing its extensionUuid | ||||||
|             # field (look at the following example). |           # field (look at the following example). | ||||||
|             pkgs.gnomeExtensions.dash-to-dock.extensionUuid |           pkgs.gnomeExtensions.dash-to-dock.extensionUuid | ||||||
| 
 | 
 | ||||||
|             # Alternatively, you can manually pass UUID as a string.   |           # Alternatively, you can manually pass UUID as a string. | ||||||
|             # "dash-to-dock@micxgx.gmail.com" |           # "dash-to-dock@micxgx.gmail.com" | ||||||
|           ]; |         ]; | ||||||
|         }; |       }; | ||||||
| 
 | 
 | ||||||
|       "org/gnome/shell/extensions/dash-to-dock" = { |       "org/gnome/shell/extensions/dash-to-dock" = { | ||||||
|         "dock-position" = "LEFT"; |         "dock-position" = "LEFT"; | ||||||
|  |  | ||||||
|  | @ -1,8 +1,12 @@ | ||||||
| { lib, config, pkgs, inputs, ... }: |  | ||||||
| let |  | ||||||
|   cfg = config.users.leyla; |  | ||||||
| in |  | ||||||
| { | { | ||||||
|  |   lib, | ||||||
|  |   config, | ||||||
|  |   pkgs, | ||||||
|  |   inputs, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   cfg = config.users.leyla; | ||||||
|  | in { | ||||||
|   imports = [ |   imports = [ | ||||||
|     ../../overlays/intellij.nix |     ../../overlays/intellij.nix | ||||||
|     ../../overlays/vscodium.nix |     ../../overlays/vscodium.nix | ||||||
|  | @ -74,37 +78,39 @@ in | ||||||
|             # development tools |             # development tools | ||||||
|             (vscode-with-extensions.override { |             (vscode-with-extensions.override { | ||||||
|               vscode = vscodium; |               vscode = vscodium; | ||||||
|               vscodeExtensions = with open-vsx; [ |               vscodeExtensions = with open-vsx; | ||||||
|                 # vs code feel extensions |                 [ | ||||||
|                 ms-vscode.atom-keybindings |                   # vs code feel extensions | ||||||
|                 akamud.vscode-theme-onedark |                   ms-vscode.atom-keybindings | ||||||
|                 streetsidesoftware.code-spell-checker |                   akamud.vscode-theme-onedark | ||||||
|                 streetsidesoftware.code-spell-checker-german |                   streetsidesoftware.code-spell-checker | ||||||
|                 streetsidesoftware.code-spell-checker-italian |                   streetsidesoftware.code-spell-checker-german | ||||||
|                 jeanp413.open-remote-ssh |                   streetsidesoftware.code-spell-checker-italian | ||||||
|  |                   jeanp413.open-remote-ssh | ||||||
| 
 | 
 | ||||||
|                 # nix extensions |                   # nix extensions | ||||||
|                 pinage404.nix-extension-pack |                   pinage404.nix-extension-pack | ||||||
|                 jnoortheen.nix-ide |                   jnoortheen.nix-ide | ||||||
| 
 | 
 | ||||||
|                 # html extensions |                   # html extensions | ||||||
|                 formulahendry.auto-rename-tag |                   formulahendry.auto-rename-tag | ||||||
|                 ms-vscode.live-server |                   ms-vscode.live-server | ||||||
| 
 | 
 | ||||||
|                 # js extensions |                   # js extensions | ||||||
|                 dsznajder.es7-react-js-snippets |                   dsznajder.es7-react-js-snippets | ||||||
|                 dbaeumer.vscode-eslint |                   dbaeumer.vscode-eslint | ||||||
|                 standard.vscode-standard |                   standard.vscode-standard | ||||||
|                 firsttris.vscode-jest-runner |                   firsttris.vscode-jest-runner | ||||||
|                 stylelint.vscode-stylelint |                   stylelint.vscode-stylelint | ||||||
|                 tauri-apps.tauri-vscode |                   tauri-apps.tauri-vscode | ||||||
| 
 | 
 | ||||||
|                 # misc extensions         |                   # misc extensions | ||||||
|                 bungcip.better-toml |                   bungcip.better-toml | ||||||
|               ] ++ (with vscode-marketplace; [ |                 ] | ||||||
|                 # js extensions |                 ++ (with vscode-marketplace; [ | ||||||
|                 karyfoundation.nearley |                   # js extensions | ||||||
|               ]); |                   karyfoundation.nearley | ||||||
|  |                 ]); | ||||||
|             }) |             }) | ||||||
|             androidStudioPackages.canary |             androidStudioPackages.canary | ||||||
|             jetbrains.idea-community |             jetbrains.idea-community | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| _: | _: { | ||||||
| { |  | ||||||
|   # mkUnless = condition: then: (mkIf (!condition) then); |   # mkUnless = condition: then: (mkIf (!condition) then); | ||||||
|   # mkIfElse = condition: then: else: lib.mkMerge [ |   # mkIfElse = condition: then: else: lib.mkMerge [ | ||||||
|   #   (mkIf condition then) |   #   (mkIf condition then) | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue