moved all extensions other then spell check into their own modules
This commit is contained in:
		
							parent
							
								
									0fd54a5494
								
							
						
					
					
						commit
						b5cfb5ec77
					
				
					 8 changed files with 187 additions and 29 deletions
				
			
		|  | @ -39,6 +39,7 @@ in { | ||||||
|             # vs code feel |             # vs code feel | ||||||
|             oneDark.enable = true; |             oneDark.enable = true; | ||||||
|             atomKeybindings.enable = true; |             atomKeybindings.enable = true; | ||||||
|  |             openRemoteSsh.enable = true; | ||||||
| 
 | 
 | ||||||
|             # html development |             # html development | ||||||
|             autoRenameTag.enable = true; |             autoRenameTag.enable = true; | ||||||
|  | @ -52,50 +53,39 @@ in { | ||||||
|             vscodeStandard.enable = true; |             vscodeStandard.enable = true; | ||||||
|             vscodeStylelint.enable = true; |             vscodeStylelint.enable = true; | ||||||
| 
 | 
 | ||||||
|  |             nearley.enable = true; | ||||||
|  | 
 | ||||||
|  |             # astro development | ||||||
|  |             vscodeMdx.enable = true; | ||||||
|  |             astroVscode.enable = true; | ||||||
|  | 
 | ||||||
|             # nix development |             # nix development | ||||||
|             alejandra.enable = nix-development-enabled; |             alejandra.enable = nix-development-enabled; | ||||||
|             nixIde.enable = nix-development-enabled; |             nixIde.enable = nix-development-enabled; | ||||||
| 
 | 
 | ||||||
|  |             # go development | ||||||
|  |             go.enable = true; | ||||||
|  | 
 | ||||||
|             # ai tooling |             # ai tooling | ||||||
|             aiCode = { |             aiCode = { | ||||||
|               enable = ai-tooling-enabled; |               enable = ai-tooling-enabled; | ||||||
|               ollamaHost = "http://defiant:11434"; |               ollamaHost = "http://defiant:11434"; | ||||||
|               inlineCompletion.model = "qwen3:4b"; |               inlineCompletion.model = "qwen3:4b"; | ||||||
|             }; |             }; | ||||||
|  | 
 | ||||||
|  |             # misc extensions | ||||||
|  |             evenBetterToml.enable = true; | ||||||
|           }; |           }; | ||||||
| 
 | 
 | ||||||
|           extensions = let |           extensions = let | ||||||
|             extension-pkgs = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; |             extension-pkgs = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|           in ( |           in ( | ||||||
|             ( |  | ||||||
|             with extension-pkgs.open-vsx; [ |             with extension-pkgs.open-vsx; [ | ||||||
|               # vs code feel extensions |               # vs code feel extensions | ||||||
|               streetsidesoftware.code-spell-checker |               streetsidesoftware.code-spell-checker | ||||||
|               streetsidesoftware.code-spell-checker-german |               streetsidesoftware.code-spell-checker-german | ||||||
|               streetsidesoftware.code-spell-checker-italian |               streetsidesoftware.code-spell-checker-italian | ||||||
|                 jeanp413.open-remote-ssh |  | ||||||
| 
 |  | ||||||
|                 # go extensions |  | ||||||
|                 golang.go |  | ||||||
| 
 |  | ||||||
|                 # astro blog extensions |  | ||||||
|                 astro-build.astro-vscode |  | ||||||
|                 unifiedjs.vscode-mdx |  | ||||||
| 
 |  | ||||||
|                 # misc extensions |  | ||||||
|                 tamasfe.even-better-toml |  | ||||||
|             ] |             ] | ||||||
|             ) |  | ||||||
|             ++ ( |  | ||||||
|               with extension-pkgs.vscode-marketplace; ( |  | ||||||
|                 [ |  | ||||||
|                   # js extensions |  | ||||||
|                   karyfoundation.nearley |  | ||||||
|                 ] |  | ||||||
|                 ++ (lib.lists.optionals ai-tooling-enabled [ |  | ||||||
|                   ]) |  | ||||||
|               ) |  | ||||||
|             ) |  | ||||||
|           ); |           ); | ||||||
|         }; |         }; | ||||||
|       }; |       }; | ||||||
|  |  | ||||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/astroVscode.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/astroVscode.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | ||||||
|  | { | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|  |   pkgsRepository = pkgsRepositories.open-vsx; | ||||||
|  | in { | ||||||
|  |   options.programs.vscode.profiles = lib.mkOption { | ||||||
|  |     type = lib.types.attrsOf (lib.types.submodule ({config, ...}: { | ||||||
|  |       options = { | ||||||
|  |         extraExtensions.astroVscode = { | ||||||
|  |           enable = lib.mkEnableOption "should the astro-vscode extension for vscode be enabled"; | ||||||
|  |           extension = lib.mkPackageOption pkgsRepository "astro-vscode" { | ||||||
|  |             default = ["astro-build" "astro-vscode"]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|  |       config = lib.mkIf config.extraExtensions.astroVscode.enable { | ||||||
|  |         extensions = [ | ||||||
|  |           config.extraExtensions.astroVscode.extension | ||||||
|  |         ]; | ||||||
|  |       }; | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  | } | ||||||
|  | @ -13,5 +13,11 @@ | ||||||
|     ./vscodeJest.nix |     ./vscodeJest.nix | ||||||
|     ./vscodeStandard.nix |     ./vscodeStandard.nix | ||||||
|     ./vscodeStylelint.nix |     ./vscodeStylelint.nix | ||||||
|  |     ./go.nix | ||||||
|  |     ./evenBetterToml.nix | ||||||
|  |     ./openRemoteSsh.nix | ||||||
|  |     ./astroVscode.nix | ||||||
|  |     ./vscodeMdx.nix | ||||||
|  |     ./nearley.nix | ||||||
|   ]; |   ]; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -0,0 +1,27 @@ | ||||||
|  | { | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|  |   pkgsRepository = pkgsRepositories.open-vsx; | ||||||
|  | in { | ||||||
|  |   options.programs.vscode.profiles = lib.mkOption { | ||||||
|  |     type = lib.types.attrsOf (lib.types.submodule ({config, ...}: { | ||||||
|  |       options = { | ||||||
|  |         extraExtensions.evenBetterToml = { | ||||||
|  |           enable = lib.mkEnableOption "should the even-better-toml extension for vscode be enabled"; | ||||||
|  |           extension = lib.mkPackageOption pkgsRepository "even-better-toml" { | ||||||
|  |             default = ["tamasfe" "even-better-toml"]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|  |       config = lib.mkIf config.extraExtensions.evenBetterToml.enable { | ||||||
|  |         extensions = [ | ||||||
|  |           config.extraExtensions.evenBetterToml.extension | ||||||
|  |         ]; | ||||||
|  |       }; | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  | } | ||||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/go.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/go.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | ||||||
|  | { | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|  |   pkgsRepository = pkgsRepositories.open-vsx; | ||||||
|  | in { | ||||||
|  |   options.programs.vscode.profiles = lib.mkOption { | ||||||
|  |     type = lib.types.attrsOf (lib.types.submodule ({config, ...}: { | ||||||
|  |       options = { | ||||||
|  |         extraExtensions.go = { | ||||||
|  |           enable = lib.mkEnableOption "should the go extension for vscode be enabled"; | ||||||
|  |           extension = lib.mkPackageOption pkgsRepository "go" { | ||||||
|  |             default = ["golang" "go"]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|  |       config = lib.mkIf config.extraExtensions.go.enable { | ||||||
|  |         extensions = [ | ||||||
|  |           config.extraExtensions.go.extension | ||||||
|  |         ]; | ||||||
|  |       }; | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  | } | ||||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/nearley.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/nearley.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | ||||||
|  | { | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|  |   pkgsRepository = pkgsRepositories.vscode-marketplace; | ||||||
|  | in { | ||||||
|  |   options.programs.vscode.profiles = lib.mkOption { | ||||||
|  |     type = lib.types.attrsOf (lib.types.submodule ({config, ...}: { | ||||||
|  |       options = { | ||||||
|  |         extraExtensions.nearley = { | ||||||
|  |           enable = lib.mkEnableOption "should the nearley extension for vscode be enabled"; | ||||||
|  |           extension = lib.mkPackageOption pkgsRepository "nearley" { | ||||||
|  |             default = ["karyfoundation" "nearley"]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|  |       config = lib.mkIf config.extraExtensions.nearley.enable { | ||||||
|  |         extensions = [ | ||||||
|  |           config.extraExtensions.nearley.extension | ||||||
|  |         ]; | ||||||
|  |       }; | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  | } | ||||||
|  | @ -0,0 +1,27 @@ | ||||||
|  | { | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|  |   pkgsRepository = pkgsRepositories.open-vsx; | ||||||
|  | in { | ||||||
|  |   options.programs.vscode.profiles = lib.mkOption { | ||||||
|  |     type = lib.types.attrsOf (lib.types.submodule ({config, ...}: { | ||||||
|  |       options = { | ||||||
|  |         extraExtensions.openRemoteSsh = { | ||||||
|  |           enable = lib.mkEnableOption "should the open-remote-ssh extension for vscode be enabled"; | ||||||
|  |           extension = lib.mkPackageOption pkgsRepository "open-remote-ssh" { | ||||||
|  |             default = ["jeanp413" "open-remote-ssh"]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|  |       config = lib.mkIf config.extraExtensions.openRemoteSsh.enable { | ||||||
|  |         extensions = [ | ||||||
|  |           config.extraExtensions.openRemoteSsh.extension | ||||||
|  |         ]; | ||||||
|  |       }; | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  | } | ||||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/vscodeMdx.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/vscodeMdx.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | ||||||
|  | { | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: let | ||||||
|  |   pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version; | ||||||
|  |   pkgsRepository = pkgsRepositories.open-vsx; | ||||||
|  | in { | ||||||
|  |   options.programs.vscode.profiles = lib.mkOption { | ||||||
|  |     type = lib.types.attrsOf (lib.types.submodule ({config, ...}: { | ||||||
|  |       options = { | ||||||
|  |         extraExtensions.vscodeMdx = { | ||||||
|  |           enable = lib.mkEnableOption "should the vscode-mdx extension for vscode be enabled"; | ||||||
|  |           extension = lib.mkPackageOption pkgsRepository "vscode-mdx" { | ||||||
|  |             default = ["unifiedjs" "vscode-mdx"]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|  |       config = lib.mkIf config.extraExtensions.vscodeMdx.enable { | ||||||
|  |         extensions = [ | ||||||
|  |           config.extraExtensions.vscodeMdx.extension | ||||||
|  |         ]; | ||||||
|  |       }; | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  | } | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue