forked from jan-leila/nix-config
		
	main #5
					 10 changed files with 243 additions and 14 deletions
				
			
		|  | @ -36,14 +36,31 @@ in { | |||
|           ]; | ||||
| 
 | ||||
|           extraExtensions = { | ||||
|             # vs code feel | ||||
|             oneDark.enable = true; | ||||
|             atomKeybindings.enable = true; | ||||
| 
 | ||||
|             # html development | ||||
|             autoRenameTag.enable = true; | ||||
|             liveServer.enable = true; | ||||
| 
 | ||||
|             # js development | ||||
|             es7ReactJsSnippets.enable = true; | ||||
|             tauriVscode.enable = true; | ||||
|             vscodeEslint.enable = true; | ||||
|             vscodeJest.enable = true; | ||||
|             vscodeStandard.enable = true; | ||||
|             vscodeStylelint.enable = true; | ||||
| 
 | ||||
|             # nix development | ||||
|             alejandra.enable = nix-development-enabled; | ||||
|             nixIde.enable = nix-development-enabled; | ||||
| 
 | ||||
|             # ai tooling | ||||
|             aiCode = { | ||||
|               enable = ai-tooling-enabled; | ||||
|               ollamaHost = "http://defiant:11434"; | ||||
|             }; | ||||
|             alejandra.enable = nix-development-enabled; | ||||
|             nixIde.enable = nix-development-enabled; | ||||
|           }; | ||||
| 
 | ||||
|           extensions = let | ||||
|  | @ -57,18 +74,6 @@ in { | |||
|                 streetsidesoftware.code-spell-checker-italian | ||||
|                 jeanp413.open-remote-ssh | ||||
| 
 | ||||
|                 # html extensions | ||||
|                 formulahendry.auto-rename-tag | ||||
|                 ms-vscode.live-server | ||||
| 
 | ||||
|                 # js extensions | ||||
|                 dsznajder.es7-react-js-snippets | ||||
|                 dbaeumer.vscode-eslint | ||||
|                 standard.vscode-standard | ||||
|                 orta.vscode-jest | ||||
|                 stylelint.vscode-stylelint | ||||
|                 tauri-apps.tauri-vscode | ||||
| 
 | ||||
|                 # go extensions | ||||
|                 golang.go | ||||
| 
 | ||||
|  |  | |||
|  | @ -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.autoRenameTag = { | ||||
|           enable = lib.mkEnableOption "should the auto-rename-tag extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "auto-rename-tag" { | ||||
|             default = ["formulahendry" "auto-rename-tag"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.autoRenameTag.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.autoRenameTag.extension | ||||
|         ]; | ||||
|       }; | ||||
|     })); | ||||
|   }; | ||||
| } | ||||
|  | @ -5,5 +5,13 @@ | |||
|     ./aiCode.nix | ||||
|     ./alejandra.nix | ||||
|     ./nixIde.nix | ||||
|     ./autoRenameTag.nix | ||||
|     ./es7ReactJsSnippets.nix | ||||
|     ./liveServer.nix | ||||
|     ./tauriVscode.nix | ||||
|     ./vscodeEslint.nix | ||||
|     ./vscodeJest.nix | ||||
|     ./vscodeStandard.nix | ||||
|     ./vscodeStylelint.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.es7ReactJsSnippets = { | ||||
|           enable = lib.mkEnableOption "should the es7-react-js-snippets extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "es7-react-js-snippets" { | ||||
|             default = ["dsznajder" "es7-react-js-snippets"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.es7ReactJsSnippets.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.es7ReactJsSnippets.extension | ||||
|         ]; | ||||
|       }; | ||||
|     })); | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/liveServer.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/liveServer.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.liveServer = { | ||||
|           enable = lib.mkEnableOption "should the live-server extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "live-server" { | ||||
|             default = ["ms-vscode" "live-server"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.liveServer.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.liveServer.extension | ||||
|         ]; | ||||
|       }; | ||||
|     })); | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/tauriVscode.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/tauriVscode.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.tauriVscode = { | ||||
|           enable = lib.mkEnableOption "should the tauri-vscode extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "tauri-vscode" { | ||||
|             default = ["tauri-apps" "tauri-vscode"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.tauriVscode.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.tauriVscode.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.vscodeEslint = { | ||||
|           enable = lib.mkEnableOption "should the vscode-eslint extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "vscode-eslint" { | ||||
|             default = ["dbaeumer" "vscode-eslint"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.vscodeEslint.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.vscodeEslint.extension | ||||
|         ]; | ||||
|       }; | ||||
|     })); | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										27
									
								
								modules/home-manager-modules/programs/vscode/vscodeJest.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								modules/home-manager-modules/programs/vscode/vscodeJest.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.vscodeJest = { | ||||
|           enable = lib.mkEnableOption "should the vscode-jest extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "vscode-jest" { | ||||
|             default = ["orta" "vscode-jest"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.vscodeJest.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.vscodeJest.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.vscodeStandard = { | ||||
|           enable = lib.mkEnableOption "should the vscode-standard extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "vscode-standard" { | ||||
|             default = ["standard" "vscode-standard"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.vscodeStandard.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.vscodeStandard.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.vscodeStylelint = { | ||||
|           enable = lib.mkEnableOption "should the vscode-stylelint extension for vscode be enabled"; | ||||
|           extension = lib.mkPackageOption pkgsRepository "vscode-stylelint" { | ||||
|             default = ["stylelint" "vscode-stylelint"]; | ||||
|           }; | ||||
|         }; | ||||
|       }; | ||||
|       config = lib.mkIf config.extraExtensions.vscodeStylelint.enable { | ||||
|         extensions = [ | ||||
|           config.extraExtensions.vscodeStylelint.extension | ||||
|         ]; | ||||
|       }; | ||||
|     })); | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue