aboutsummaryrefslogtreecommitdiffstats
path: root/modules/development
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar@gmail.com>2026-09-20 04:00:07 +0530
committerArpit Chakladar <arpitchakladar@gmail.com>2026-09-20 04:00:07 +0530
commitfb442560064f98ee850c71d78330b9b3abda4774 (patch)
tree31fad467ca31b2f9127f4ea254eab76f4ce18a5f /modules/development
parentc3c245c7633885f6860191eede646d048def3e0d (diff)
downloadhome-manager-config-fb442560064f98ee850c71d78330b9b3abda4774.tar.gz
home-manager-config-fb442560064f98ee850c71d78330b9b3abda4774.zip
chore: added option guards to desktop entries for tuis
Diffstat (limited to 'modules/development')
-rw-r--r--modules/development/lazygit/default.nix143
-rw-r--r--modules/development/opencode/default.nix49
2 files changed, 97 insertions, 95 deletions
diff --git a/modules/development/lazygit/default.nix b/modules/development/lazygit/default.nix
index 1e83ed0..c2e6be8 100644
--- a/modules/development/lazygit/default.nix
+++ b/modules/development/lazygit/default.nix
@@ -21,79 +21,80 @@ in
description = "The lazygit package to use.";
};
};
- config = {
- home.file.".local/share/icons/hicolor/scalable/apps/git.svg" =
- lib.mkIf config.development.lazygit.enable
- {
- source = ../../../assets/icons/apps/git.svg;
- };
-
- xdg.desktopEntries."lazygit" = lib.mkIf config.development.lazygit.enable {
- name = "lazygit";
- exec = "${lib.getExe config.terminal.kitty.package} --class lazygit -e ${lib.getExe config.development.lazygit.package}";
- icon = "git";
- categories = [ "Development" ];
- comment = "A simple terminal UI for git commands";
- terminal = false;
- type = "Application";
- };
-
- programs.lazygit = lib.mkIf config.development.lazygit.enable {
- enable = true;
- enableBashIntegration = false;
- enableZshIntegration = config.terminal.zsh.enable;
- settings = {
- gui = with base16Colors.colorsWithHashPrefix; {
- theme = {
- lightTheme = false;
- activeBorderColor = [
- base0D
- "bold"
- ];
- inactiveBorderColor = [ base03 ];
- optionsTextColor = [ base0D ];
- selectedLineBgColor = [ base01 ];
- selectedRangeBgColor = [ base01 ];
- cherryPickedCommitBgColor = [ base0C ];
- cherryPickedCommitFgColor = [ base0D ];
- markedBaseCommitBgColor = [ base0A ];
- markedBaseCommitFgColor = [ base0D ];
- unstagedChangesColor = [ base08 ];
- defaultFgColor = [ base05 ];
- searchingActiveBorderColor = [
- base0A
- "bold"
- ];
+ config = lib.mkMerge [
+ (lib.mkIf config.development.lazygit.enable {
+ programs.lazygit = {
+ enable = true;
+ enableBashIntegration = false;
+ enableZshIntegration = config.terminal.zsh.enable;
+ settings = {
+ gui = with base16Colors.colorsWithHashPrefix; {
+ theme = {
+ lightTheme = false;
+ activeBorderColor = [
+ base0D
+ "bold"
+ ];
+ inactiveBorderColor = [ base03 ];
+ optionsTextColor = [ base0D ];
+ selectedLineBgColor = [ base01 ];
+ selectedRangeBgColor = [ base01 ];
+ cherryPickedCommitBgColor = [ base0C ];
+ cherryPickedCommitFgColor = [ base0D ];
+ markedBaseCommitBgColor = [ base0A ];
+ markedBaseCommitFgColor = [ base0D ];
+ unstagedChangesColor = [ base08 ];
+ defaultFgColor = [ base05 ];
+ searchingActiveBorderColor = [
+ base0A
+ "bold"
+ ];
+ };
+ authorColors = {
+ "*" = base0E;
+ };
+ branchColors = {
+ "master" = base08;
+ "main" = base08;
+ };
+ showIcons = true;
+ scrollHeight = 2;
+ nerdFontsVersion = "3";
+ scrollPastBottom = true;
+ mouseEvents = true;
+ border = "single";
+ commitHashLength = 4;
+ showBranchCommitHash = true;
+ showDivergenceFromBaseBranch = "arrowAndNumber";
+ autoFetch = false;
};
- authorColors = {
- "*" = base0E;
- };
- branchColors = {
- "master" = base08;
- "main" = base08;
+ git = {
+ overrideGpg = config.security.gpg.enable;
+ diffRenderers = lib.mkIf config.development.delta.enable [
+ {
+ colorArg = "always";
+ command = "delta --paging=never {{diffArgs}}";
+ }
+ ];
};
- showIcons = true;
- scrollHeight = 2;
- nerdFontsVersion = "3";
- scrollPastBottom = true;
- mouseEvents = true;
- border = "single";
- commitHashLength = 4;
- showBranchCommitHash = true;
- showDivergenceFromBaseBranch = "arrowAndNumber";
- autoFetch = false;
+ update.method = "never";
};
- git = {
- overrideGpg = config.security.gpg.enable;
- diffRenderers = lib.mkIf config.development.delta.enable [
- {
- colorArg = "always";
- command = "delta --paging=never {{diffArgs}}";
- }
- ];
- };
- update.method = "never";
};
- };
- };
+
+ home.file.".local/share/icons/hicolor/scalable/apps/git.svg" = {
+ source = ../../../assets/icons/apps/git.svg;
+ };
+ })
+ (lib.mkIf (config.development.lazygit.enable && config.terminal.kitty.enable) {
+ xdg.desktopEntries."lazygit" = {
+ name = "lazygit";
+ exec = "${lib.getExe config.terminal.kitty.package} --class lazygit -e ${lib.getExe config.development.lazygit.package}";
+ icon = "git";
+ categories = [ "Development" ];
+ comment = "A simple terminal UI for git commands";
+ terminal = false;
+ type = "Application";
+ };
+ })
+ ];
}
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";
+ };
+ })
+ ];
}