diff options
Diffstat (limited to 'modules/development/opencode/default.nix')
| -rw-r--r-- | modules/development/opencode/default.nix | 49 |
1 files changed, 25 insertions, 24 deletions
diff --git a/modules/development/opencode/default.nix b/modules/development/opencode/default.nix index 04796d9..011582e 100644 --- a/modules/development/opencode/default.nix +++ b/modules/development/opencode/default.nix @@ -16,30 +16,31 @@ }; }; - config = lib.mkIf config.development.opencode.enable { - home.file.".local/share/icons/hicolor/scalable/apps/opencode.svg" = - lib.mkIf config.development.opencode.enable - { - source = ../../../assets/icons/apps/opencode.svg; - }; + config = lib.mkMerge [ + (lib.mkIf config.development.opencode.enable { + home.file.".local/share/icons/hicolor/scalable/apps/opencode.svg" = { + source = ../../../assets/icons/apps/opencode.svg; + }; - xdg.desktopEntries."opencode" = { - name = "opencode"; - exec = "${lib.getExe config.terminal.kitty.package} --class opencode -e ${lib.getExe config.development.opencode.package}"; - icon = "opencode"; - categories = [ "Development" ]; - comment = "AI-powered coding assistant"; - terminal = false; - type = "Application"; - }; - - programs.opencode = { - enable = true; - package = pkgs.opencode; - }; + programs.opencode = { + enable = true; + package = pkgs.opencode; + }; + }) + (lib.mkIf (config.development.opencode.enable && config.terminal.kitty.enable) { + xdg.desktopEntries."opencode" = { + name = "opencode"; + exec = "${lib.getExe config.terminal.kitty.package} --class opencode -e ${lib.getExe config.development.opencode.package}"; + icon = "opencode"; + categories = [ "Development" ]; + comment = "AI-powered coding assistant"; + terminal = false; + type = "Application"; + }; - xdg.mimeApps.defaultApplications = { - "x-scheme-handler/opencode" = "opencode.desktop"; - }; - }; + xdg.mimeApps.defaultApplications = { + "x-scheme-handler/opencode" = "opencode.desktop"; + }; + }) + ]; } |
