diff --git a/home-manager/sajenim/features/editors/default.nix b/home-manager/sajenim/features/editors/default.nix index 791deea..b1243c6 100644 --- a/home-manager/sajenim/features/editors/default.nix +++ b/home-manager/sajenim/features/editors/default.nix @@ -1,8 +1,25 @@ -{ - pkgs, - inputs, - ... -}: { +{pkgs, ...}: let + # Plugin list to build our IDE's with + buildIdeWithPlugins = ide: + pkgs.jetbrains.plugins.addPlugins ide [ + "github-copilot" # patched to work with NixOS + + # Plugin ID: gruvbox-material-dark + (pkgs.stdenv.mkDerivation { + name = "gruvbox-material-dark"; + version = "1.0.2"; + src = pkgs.fetchurl { + url = "https://downloads.marketplace.jetbrains.com/files/25641/650322/gruvbox-material-dark.jar"; + hash = "sha256-cgTJRisPqtZf5NMQqdbRhx1fbrx9U2eeHkpT8+rb+8E="; + }; + dontUnpack = true; + installPhase = '' + mkdir -p $out + cp $src $out + ''; + }) + ]; +in { # Enable Visual Studio Code (VSCode) program programs.vscode = { enable = true; @@ -12,6 +29,7 @@ github.copilot github.copilot-chat ]; + # Configuration userSettings = { "window.menuBarVisibility" = "compact"; "window.titleBarStyle" = "custom"; @@ -20,23 +38,14 @@ }; # List of packages to be installed - home.packages = with pkgs; - [ - # Toolchain - gcc - unstable.python313Full # Note: keep this in sync with school. - ] - # Install jetbrains IDEs with plugins - ++ (with inputs.nix-jetbrains-plugins.lib."${system}"; [ - (buildIdeWithPlugins pkgs.jetbrains "clion" [ - "gruvbox-material-dark" - ]) - (buildIdeWithPlugins pkgs.jetbrains "idea-ultimate" [ - "gruvbox-material-dark" - ]) - (buildIdeWithPlugins pkgs.jetbrains "pycharm-professional" [ - "gruvbox-material-dark" - ]) - ]); - # https://github.com/theCapypara/nix-jetbrains-plugins + home.packages = with pkgs; [ + # Toolchain + gcc + unstable.python313Full # Note: keep this in sync with school. + + # Install jetbrains IDE's with plugins + (buildIdeWithPlugins pkgs.jetbrains.clion) + (buildIdeWithPlugins pkgs.jetbrains.idea-ultimate) + (buildIdeWithPlugins pkgs.jetbrains.pycharm-professional) + ]; }