aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar@proton.me>2026-04-24 01:48:30 +0530
committerArpit Chakladar <arpitchakladar@proton.me>2026-04-24 01:48:30 +0530
commit3e232a2bc7f5c8ea33804be1ea071a91c5f98055 (patch)
treef772b5d7d393cacf708d845acb75b55c12d3e625 /modules
parent606716e0a4b8cbeb9076fb88b6b92664a5a24081 (diff)
downloadhome-manager-config-3e232a2bc7f5c8ea33804be1ea071a91c5f98055.tar.gz
home-manager-config-3e232a2bc7f5c8ea33804be1ea071a91c5f98055.zip
replacing tools with programs to be more consistent with config options
Diffstat (limited to 'modules')
-rw-r--r--modules/default.nix2
-rw-r--r--modules/desktop/i3/default.nix2
-rw-r--r--modules/desktop/i3/keybindings.nix24
-rw-r--r--modules/desktop/polybar/module/vpn-separator.nix2
-rw-r--r--modules/desktop/polybar/module/vpn.nix2
-rw-r--r--modules/programs/bat/base16.mustache.tmTheme (renamed from modules/tools/bat/base16.mustache.tmTheme)0
-rw-r--r--modules/programs/bat/default.nix (renamed from modules/tools/bat/default.nix)7
-rw-r--r--modules/programs/bluetui/default.nix (renamed from modules/tools/bluetui/default.nix)4
-rw-r--r--modules/programs/bottom/default.nix5
-rw-r--r--modules/programs/brightnessctl/default.nix (renamed from modules/tools/brightnessctl/default.nix)4
-rw-r--r--modules/programs/bruno/default.nix (renamed from modules/tools/bruno/default.nix)4
-rw-r--r--modules/programs/default.nix (renamed from modules/tools/default.nix)5
-rw-r--r--modules/programs/devenv/alias.sh (renamed from modules/tools/devenv/alias.sh)0
-rw-r--r--modules/programs/devenv/default.nix (renamed from modules/tools/devenv/default.nix)4
-rw-r--r--modules/programs/feh/default.nix5
-rw-r--r--modules/programs/ffmpeg/default.nix (renamed from modules/tools/ffmpeg/default.nix)4
-rw-r--r--modules/programs/fzf/default.nix (renamed from modules/tools/fzf/default.nix)10
-rw-r--r--modules/programs/git/default.nix (renamed from modules/tools/git/default.nix)10
-rw-r--r--modules/programs/htop/default.nix (renamed from modules/tools/htop/default.nix)7
-rw-r--r--modules/programs/impala/default.nix (renamed from modules/tools/impala/default.nix)4
-rw-r--r--modules/programs/kitty/default.nix (renamed from modules/tools/kitty/default.nix)9
-rw-r--r--modules/programs/lf/default.nix (renamed from modules/tools/lf/default.nix)9
-rw-r--r--modules/programs/lf/icons (renamed from modules/tools/lf/icons)0
-rw-r--r--modules/programs/lf/lfrc (renamed from modules/tools/lf/lfrc)0
-rw-r--r--modules/programs/librewolf/default.nix (renamed from modules/tools/librewolf/default.nix)7
-rw-r--r--modules/programs/lsd/default.nix (renamed from modules/tools/lsd/default.nix)7
-rw-r--r--modules/programs/maim/default.nix (renamed from modules/tools/maim/default.nix)4
-rw-r--r--modules/programs/nixvim/colorscheme.nix26
-rw-r--r--modules/programs/nixvim/default.nix (renamed from modules/tools/nixvim/default.nix)5
-rw-r--r--modules/programs/nixvim/keymaps.nix41
-rw-r--r--modules/programs/nixvim/plugins/cmp.nix (renamed from modules/tools/nixvim/plugins/cmp.nix)2
-rw-r--r--modules/programs/nixvim/plugins/comment.nix (renamed from modules/tools/nixvim/plugins/comment.nix)2
-rw-r--r--modules/programs/nixvim/plugins/default.nix (renamed from modules/tools/nixvim/plugins/default.nix)0
-rw-r--r--modules/programs/nixvim/plugins/gitsigns.nix (renamed from modules/tools/nixvim/plugins/gitsigns.nix)2
-rw-r--r--modules/programs/nixvim/plugins/indent-blankline.nix (renamed from modules/tools/nixvim/plugins/indent-blankline.nix)2
-rw-r--r--modules/programs/nixvim/plugins/lsp.nix (renamed from modules/tools/nixvim/plugins/lsp.nix)2
-rw-r--r--modules/programs/nixvim/plugins/lualine.nix (renamed from modules/tools/nixvim/plugins/lualine.nix)2
-rw-r--r--modules/programs/nixvim/plugins/luasnip.nix (renamed from modules/tools/nixvim/plugins/luasnip.nix)2
-rw-r--r--modules/programs/nixvim/plugins/noice.nix (renamed from modules/tools/nixvim/plugins/noice.nix)2
-rw-r--r--modules/programs/nixvim/plugins/nvim-tree.nix (renamed from modules/tools/nixvim/plugins/nvim-tree.nix)2
-rw-r--r--modules/programs/nixvim/plugins/telescope.nix (renamed from modules/tools/nixvim/plugins/telescope.nix)2
-rw-r--r--modules/programs/nixvim/plugins/treesitter.nix (renamed from modules/tools/nixvim/plugins/treesitter.nix)2
-rw-r--r--modules/programs/nixvim/plugins/web-devicons.nix (renamed from modules/tools/nixvim/plugins/web-devicons.nix)2
-rw-r--r--modules/programs/nixvim/plugins/which-key.nix (renamed from modules/tools/nixvim/plugins/which-key.nix)2
-rw-r--r--modules/programs/nvtop/default.nix (renamed from modules/tools/nvtop/default.nix)4
-rw-r--r--modules/programs/opencode/default.nix5
-rw-r--r--modules/programs/openvpn/default.nix (renamed from modules/tools/openvpn/default.nix)4
-rw-r--r--modules/programs/ouch/default.nix (renamed from modules/tools/ouch/default.nix)4
-rw-r--r--modules/programs/pamixer/default.nix (renamed from modules/tools/pamixer/default.nix)4
-rw-r--r--modules/programs/playerctl/default.nix (renamed from modules/tools/playerctl/default.nix)4
-rw-r--r--modules/programs/qemu/default.nix (renamed from modules/tools/qemu/default.nix)4
-rw-r--r--modules/programs/slop/default.nix (renamed from modules/tools/slop/default.nix)4
-rw-r--r--modules/programs/ssh/default.nix (renamed from modules/tools/openssh/default.nix)7
-rw-r--r--modules/programs/starship/default.nix (renamed from modules/tools/starship/default.nix)9
-rw-r--r--modules/programs/systemctl-tui/default.nix (renamed from modules/tools/systemctl-tui/default.nix)4
-rw-r--r--modules/programs/tmux/default.nix4
-rw-r--r--modules/programs/tor/default.nix (renamed from modules/tools/tor/default.nix)4
-rw-r--r--modules/programs/umu-launcher/default.nix (renamed from modules/tools/umu-launcher/default.nix)4
-rw-r--r--modules/programs/vlc/default.nix (renamed from modules/tools/vlc/default.nix)4
-rw-r--r--modules/programs/vscode/default.nix (renamed from modules/tools/vscode/default.nix)7
-rw-r--r--modules/programs/zathura/default.nix4
-rw-r--r--modules/programs/zsh/default.nix (renamed from modules/tools/zsh/default.nix)15
-rw-r--r--modules/programs/zsh/nix-aliases.sh (renamed from modules/tools/zsh/nix-aliases.sh)0
-rw-r--r--modules/scripts/default.nix32
-rw-r--r--modules/tools/bottom/default.nix12
-rw-r--r--modules/tools/fastfetch/default.nix14
-rw-r--r--modules/tools/feh/default.nix12
-rw-r--r--modules/tools/nixvim/colorscheme.nix28
-rw-r--r--modules/tools/nixvim/keymaps.nix43
-rw-r--r--modules/tools/opencode/default.nix18
-rw-r--r--modules/tools/tmux/default.nix12
-rw-r--r--modules/tools/zathura/default.nix12
72 files changed, 201 insertions, 316 deletions
diff --git a/modules/default.nix b/modules/default.nix
index 9af602b..5a21b65 100644
--- a/modules/default.nix
+++ b/modules/default.nix
@@ -5,6 +5,6 @@
./desktop
./fonts
./scripts
- ./tools
+ ./programs
];
}
diff --git a/modules/desktop/i3/default.nix b/modules/desktop/i3/default.nix
index d8a0c85..4e8664d 100644
--- a/modules/desktop/i3/default.nix
+++ b/modules/desktop/i3/default.nix
@@ -77,7 +77,7 @@
}
{
command =
- if config.tools.feh.enable then
+ if config.programs.feh.enable then
"${lib.getExe pkgs.feh} --bg-scale ${../../../assets/sapling.png}"
else
"xsetroot -solid \"${config.scheme.withHashtag.base00}\"";
diff --git a/modules/desktop/i3/keybindings.nix b/modules/desktop/i3/keybindings.nix
index bc9b44e..9a16d4b 100644
--- a/modules/desktop/i3/keybindings.nix
+++ b/modules/desktop/i3/keybindings.nix
@@ -11,29 +11,29 @@ in
{
# --- General Applications ---
"${mod}+r" =
- lib.mkIf (config.tools.fzf.enable && config.tools.kitty.enable)
+ lib.mkIf (config.programs.fzf.enable && config.programs.kitty.enable)
"exec ${lib.getExe pkgs.kitty} --class application-launcher -e ${lib.getExe config.scripts.fzf-launcher.package}";
- "${mod}+t" = lib.mkIf config.tools.kitty.enable "exec ${lib.getExe pkgs.kitty}";
+ "${mod}+t" = lib.mkIf config.programs.kitty.enable "exec ${lib.getExe pkgs.kitty}";
"${mod}+f" =
- lib.mkIf (config.tools.kitty.enable && config.tools.lf.enable)
+ lib.mkIf (config.programs.kitty.enable && config.programs.lf.enable)
"exec ${lib.getExe pkgs.kitty} --title 'File Manager' --class file-explorer -e ${lib.getExe config.programs.lf.package}";
"${mod}+s" =
- lib.mkIf config.tools.kitty.enable "exec ${lib.getExe pkgs.kitty} --title 'Keybindings' --class keybindings-viewer -e ${lib.getExe config.scripts.i3-keybindings.package}";
+ lib.mkIf config.programs.kitty.enable "exec ${lib.getExe pkgs.kitty} --title 'Keybindings' --class keybindings-viewer -e ${lib.getExe config.scripts.i3-keybindings.package}";
"${mod}+q" = "kill";
# --- Media / Hardware Keys ---
"XF86MonBrightnessDown" =
- lib.mkIf config.tools.brightnessctl.enable "exec ${lib.getExe pkgs.brightnessctl} set 5%-";
+ lib.mkIf config.programs.brightnessctl.enable "exec ${lib.getExe pkgs.brightnessctl} set 5%-";
"XF86MonBrightnessUp" =
- lib.mkIf config.tools.brightnessctl.enable "exec ${lib.getExe pkgs.brightnessctl} set +5%";
+ lib.mkIf config.programs.brightnessctl.enable "exec ${lib.getExe pkgs.brightnessctl} set +5%";
"XF86AudioLowerVolume" =
- lib.mkIf config.tools.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --decrease 5";
+ lib.mkIf config.programs.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --decrease 5";
"XF86AudioRaiseVolume" =
- lib.mkIf config.tools.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --increase 5";
+ lib.mkIf config.programs.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --increase 5";
"XF86AudioMute" =
- lib.mkIf config.tools.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --toggle-mute";
+ lib.mkIf config.programs.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --toggle-mute";
"XF86AudioPlay" =
- lib.mkIf config.tools.playerctl.enable "exec ${lib.getExe pkgs.playerctl} play-pause";
+ lib.mkIf config.programs.playerctl.enable "exec ${lib.getExe pkgs.playerctl} play-pause";
# --- Window Management (Vim-style) ---
# Focus
@@ -85,7 +85,7 @@ in
# --- Screenshots ---
"${mod}+p" =
- lib.mkIf config.tools.maim.enable "exec \"${lib.getExe pkgs.maim} -s | xclip -selection clipboard -t image/png\"";
+ lib.mkIf config.programs.maim.enable "exec \"${lib.getExe pkgs.maim} -s | xclip -selection clipboard -t image/png\"";
"${mod}+Shift+p" =
- lib.mkIf config.tools.maim.enable "exec \"mkdir -p ~/Pictures/Screenshots && ${lib.getExe pkgs.maim} -s ~/Pictures/Screenshots/screenshot-$(date +%Y%m%d-%H%M%S).png\"";
+ lib.mkIf config.programs.maim.enable "exec \"mkdir -p ~/Pictures/Screenshots && ${lib.getExe pkgs.maim} -s ~/Pictures/Screenshots/screenshot-$(date +%Y%m%d-%H%M%S).png\"";
}
diff --git a/modules/desktop/polybar/module/vpn-separator.nix b/modules/desktop/polybar/module/vpn-separator.nix
index 5d92162..0904b6c 100644
--- a/modules/desktop/polybar/module/vpn-separator.nix
+++ b/modules/desktop/polybar/module/vpn-separator.nix
@@ -8,7 +8,7 @@
with config.scheme.withHashtag;
{
type = "custom/script";
- exec-if = "${lib.getExe pkgs.zsh} -c '${lib.getExe' pkgs.iproute2 "ip"} a | ${lib.getExe pkgs.gnugrep} -q tun0'";
+ exec-if = "${lib.getExe config.programs.zsh.package} -c '${lib.getExe' pkgs.iproute2 "ip"} a | ${lib.getExe pkgs.gnugrep} -q tun0'";
exec = "echo VPN";
interval = 5;
diff --git a/modules/desktop/polybar/module/vpn.nix b/modules/desktop/polybar/module/vpn.nix
index dc0467e..2171989 100644
--- a/modules/desktop/polybar/module/vpn.nix
+++ b/modules/desktop/polybar/module/vpn.nix
@@ -8,7 +8,7 @@
with config.scheme.withHashtag;
{
type = "custom/script";
- exec-if = "${lib.getExe pkgs.zsh} -c '${lib.getExe' pkgs.iproute2 "ip"} a | ${lib.getExe pkgs.gnugrep} -q tun0'";
+ exec-if = "${lib.getExe config.programs.zsh.package} -c '${lib.getExe' pkgs.iproute2 "ip"} a | ${lib.getExe pkgs.gnugrep} -q tun0'";
exec = "echo VPN";
interval = 5;
diff --git a/modules/tools/bat/base16.mustache.tmTheme b/modules/programs/bat/base16.mustache.tmTheme
index 6b2cd5b..6b2cd5b 100644
--- a/modules/tools/bat/base16.mustache.tmTheme
+++ b/modules/programs/bat/base16.mustache.tmTheme
diff --git a/modules/tools/bat/default.nix b/modules/programs/bat/default.nix
index 1bfdb61..3c962a3 100644
--- a/modules/tools/bat/default.nix
+++ b/modules/programs/bat/default.nix
@@ -7,13 +7,8 @@
# bat - a cat clone with wings
{
- options.tools.bat = {
- enable = lib.mkEnableOption "Enables bat.";
- };
-
- config = lib.mkIf config.tools.bat.enable {
+ config = lib.mkIf config.programs.bat.enable {
programs.bat = {
- enable = true;
config = {
theme = "base16";
};
diff --git a/modules/tools/bluetui/default.nix b/modules/programs/bluetui/default.nix
index 4c2e8b6..d214d4b 100644
--- a/modules/tools/bluetui/default.nix
+++ b/modules/programs/bluetui/default.nix
@@ -7,11 +7,11 @@
# Bluetui - Terminal UI for Bluetooth management
{
- options.tools.bluetui = {
+ options.programs.bluetui = {
enable = lib.mkEnableOption "Enables bluetui.";
};
- config = lib.mkIf config.tools.bluetui.enable {
+ config = lib.mkIf config.programs.bluetui.enable {
home.packages = with pkgs; [
bluetui
];
diff --git a/modules/programs/bottom/default.nix b/modules/programs/bottom/default.nix
new file mode 100644
index 0000000..0fd2853
--- /dev/null
+++ b/modules/programs/bottom/default.nix
@@ -0,0 +1,5 @@
+{ ... }:
+
+# Bottom - Cross-platform graphical process/system monitor (Rust-based)
+{
+}
diff --git a/modules/tools/brightnessctl/default.nix b/modules/programs/brightnessctl/default.nix
index 66c145a..5092ede 100644
--- a/modules/tools/brightnessctl/default.nix
+++ b/modules/programs/brightnessctl/default.nix
@@ -7,11 +7,11 @@
# brightnessctl - Backlight brightness control tool
{
- options.tools.brightnessctl = {
+ options.programs.brightnessctl = {
enable = lib.mkEnableOption "Enables brightnessctl.";
};
- config = lib.mkIf config.tools.brightnessctl.enable {
+ config = lib.mkIf config.programs.brightnessctl.enable {
home.packages = with pkgs; [
brightnessctl
];
diff --git a/modules/tools/bruno/default.nix b/modules/programs/bruno/default.nix
index 27de7ac..72932db 100644
--- a/modules/tools/bruno/default.nix
+++ b/modules/programs/bruno/default.nix
@@ -7,11 +7,11 @@
# Bruno - Open-source API client for testing HTTP endpoints
{
- options.tools.bruno = {
+ options.programs.bruno = {
enable = lib.mkEnableOption "Enables bruno.";
};
- config = lib.mkIf config.tools.bruno.enable {
+ config = lib.mkIf config.programs.bruno.enable {
home.packages = with pkgs; [
bruno
];
diff --git a/modules/tools/default.nix b/modules/programs/default.nix
index af9976d..76be19f 100644
--- a/modules/tools/default.nix
+++ b/modules/programs/default.nix
@@ -9,7 +9,6 @@
./brightnessctl
./bruno
./devenv
- ./fastfetch
./feh
./ffmpeg
./fzf
@@ -21,10 +20,10 @@
./librewolf
./lsd
./maim
- ./nixvim
+ # ./nixvim
./nvtop
./opencode
- ./openssh
+ ./ssh
./openvpn
./ouch
./pamixer
diff --git a/modules/tools/devenv/alias.sh b/modules/programs/devenv/alias.sh
index e63dbd8..e63dbd8 100644
--- a/modules/tools/devenv/alias.sh
+++ b/modules/programs/devenv/alias.sh
diff --git a/modules/tools/devenv/default.nix b/modules/programs/devenv/default.nix
index 43be2df..633fd0d 100644
--- a/modules/tools/devenv/default.nix
+++ b/modules/programs/devenv/default.nix
@@ -7,7 +7,7 @@
# Devenv - Developer environment tooling (Nix-based dev environments)
{
- options.tools.devenv = {
+ options.programs.devenv = {
enable = lib.mkEnableOption "Enables devenv.";
};
@@ -15,7 +15,7 @@
let
shellIntegration = builtins.readFile ./alias.sh;
in
- lib.mkIf config.tools.devenv.enable {
+ lib.mkIf config.programs.devenv.enable {
home.packages = with pkgs; [
devenv
];
diff --git a/modules/programs/feh/default.nix b/modules/programs/feh/default.nix
new file mode 100644
index 0000000..050934e
--- /dev/null
+++ b/modules/programs/feh/default.nix
@@ -0,0 +1,5 @@
+{ ... }:
+
+# Feh - Lightweight image viewer and wallpaper setter
+{
+}
diff --git a/modules/tools/ffmpeg/default.nix b/modules/programs/ffmpeg/default.nix
index 4a89838..88f7a00 100644
--- a/modules/tools/ffmpeg/default.nix
+++ b/modules/programs/ffmpeg/default.nix
@@ -7,11 +7,11 @@
# FFmpeg - Command-line audio/video converter and streaming tool
{
- options.tools.ffmpeg = {
+ options.programs.ffmpeg = {
enable = lib.mkEnableOption "Enables ffmpeg.";
};
- config = lib.mkIf config.tools.ffmpeg.enable {
+ config = lib.mkIf config.programs.ffmpeg.enable {
home.packages = with pkgs; [
ffmpeg-full
];
diff --git a/modules/tools/fzf/default.nix b/modules/programs/fzf/default.nix
index e623270..8816ddd 100644
--- a/modules/tools/fzf/default.nix
+++ b/modules/programs/fzf/default.nix
@@ -2,20 +2,14 @@
# FZF - Fuzzy finder, CLI fuzzy search tool
{
- options.tools.fzf = {
- enable = lib.mkEnableOption "Enables fzf.";
- };
-
config =
let
shellIntegration = ''
- ${if config.tools.zsh.enable then "eval \"$(fzf --zsh)\"" else "eval \"$(fzf --bash)\""}
+ ${if config.programs.zsh.enable then "eval \"$(fzf --zsh)\"" else "eval \"$(fzf --bash)\""}
'';
in
- lib.mkIf config.tools.fzf.enable {
+ lib.mkIf config.programs.fzf.enable {
programs.fzf = {
- enable = true;
-
defaultOptions = [
"--height 100%"
"--layout=reverse"
diff --git a/modules/tools/git/default.nix b/modules/programs/git/default.nix
index 6a34fd4..24d63c7 100644
--- a/modules/tools/git/default.nix
+++ b/modules/programs/git/default.nix
@@ -2,8 +2,7 @@
# Git - Distributed version control system
{
- options.tools.git = {
- enable = lib.mkEnableOption "Enables git.";
+ options.programs.git = {
username = lib.mkOption {
type = lib.types.str;
description = "Git username.";
@@ -14,13 +13,12 @@
};
};
- config = lib.mkIf config.tools.git.enable {
+ config = lib.mkIf config.programs.git.enable {
programs.git = {
- enable = true;
settings = {
user = {
- name = config.tools.git.username;
- email = config.tools.git.email;
+ name = config.programs.git.username;
+ email = config.programs.git.email;
};
credential.helper = "store --file ${config.xdg.cacheHome}/git/credential";
core.askPass = "";
diff --git a/modules/tools/htop/default.nix b/modules/programs/htop/default.nix
index 27050d6..7781464 100644
--- a/modules/tools/htop/default.nix
+++ b/modules/programs/htop/default.nix
@@ -7,13 +7,8 @@
# Htop - Interactive process viewer (using htop-vim version)
{
- options.tools.htop = {
- enable = lib.mkEnableOption "Enables htop.";
- };
-
- config = lib.mkIf config.tools.htop.enable {
+ config = lib.mkIf config.programs.htop.enable {
programs.htop = {
- enable = true;
package = pkgs.htop-vim;
};
};
diff --git a/modules/tools/impala/default.nix b/modules/programs/impala/default.nix
index 933aa7b..6802381 100644
--- a/modules/tools/impala/default.nix
+++ b/modules/programs/impala/default.nix
@@ -7,11 +7,11 @@
# Impala - Apache Impala: SQL query engine for Apache Hadoop
{
- options.tools.impala = {
+ options.programs.impala = {
enable = lib.mkEnableOption "Enables impala.";
};
- config = lib.mkIf config.tools.impala.enable {
+ config = lib.mkIf config.programs.impala.enable {
home.packages = with pkgs; [
impala
];
diff --git a/modules/tools/kitty/default.nix b/modules/programs/kitty/default.nix
index 691b738..2e81ebc 100644
--- a/modules/tools/kitty/default.nix
+++ b/modules/programs/kitty/default.nix
@@ -7,13 +7,8 @@
# Kitty - GPU-accelerated terminal emulator
{
- options.tools.kitty = {
- enable = lib.mkEnableOption "Enables kitty.";
- };
-
- config = lib.mkIf config.tools.kitty.enable {
+ config = lib.mkIf config.programs.kitty.enable {
programs.kitty = {
- enable = true;
settings = with config.scheme.withHashtag; {
window_padding_width = 10;
font_size = config.fonts.size;
@@ -50,7 +45,7 @@
allow_remote_control = "yes";
listen_on = "unix:/tmp/kitty";
- shell = lib.mkIf config.tools.zsh.enable "${lib.getExe pkgs.zsh}";
+ shell = lib.mkIf config.programs.zsh.enable "${lib.getExe pkgs.zsh}";
};
};
};
diff --git a/modules/tools/lf/default.nix b/modules/programs/lf/default.nix
index 9ce31d4..eb605f5 100644
--- a/modules/tools/lf/default.nix
+++ b/modules/programs/lf/default.nix
@@ -7,17 +7,12 @@
# lf - terminal file manager
{
- options.tools.lf = {
- enable = lib.mkEnableOption "Enables lf.";
- };
-
- config = lib.mkIf config.tools.lf.enable {
+ config = lib.mkIf config.programs.lf.enable {
home.packages = with pkgs; [
ctpv
];
programs.lf = {
- enable = true;
settings = {
number = true;
icons = true;
@@ -25,7 +20,7 @@
hidden = true;
preview = true;
- shell = if config.tools.zsh.enable then lib.getExe pkgs.zsh else "bash";
+ shell = if config.programs.zsh.enable then lib.getExe pkgs.zsh else "bash";
shellopts = "'-eu'";
ifs = "\n";
scrolloff = "4";
diff --git a/modules/tools/lf/icons b/modules/programs/lf/icons
index 8697cf2..8697cf2 100644
--- a/modules/tools/lf/icons
+++ b/modules/programs/lf/icons
diff --git a/modules/tools/lf/lfrc b/modules/programs/lf/lfrc
index 11a9959..11a9959 100644
--- a/modules/tools/lf/lfrc
+++ b/modules/programs/lf/lfrc
diff --git a/modules/tools/librewolf/default.nix b/modules/programs/librewolf/default.nix
index 0e5133d..0c457a5 100644
--- a/modules/tools/librewolf/default.nix
+++ b/modules/programs/librewolf/default.nix
@@ -7,13 +7,8 @@
# Librewolf - A privacy-focused fork of Mozilla Firefox
{
- options.tools.librewolf = {
- enable = lib.mkEnableOption "Enables librewolf.";
- };
-
- config = lib.mkIf config.tools.librewolf.enable {
+ config = lib.mkIf config.programs.librewolf.enable {
programs.librewolf = {
- enable = true;
package = pkgs.librewolf;
profiles."arpit" = {
isDefault = true;
diff --git a/modules/tools/lsd/default.nix b/modules/programs/lsd/default.nix
index 6e04651..99fe1bd 100644
--- a/modules/tools/lsd/default.nix
+++ b/modules/programs/lsd/default.nix
@@ -2,13 +2,8 @@
# LSD - Ls alternative with icons and colors (Rust-based)
{
- options.tools.lsd = {
- enable = lib.mkEnableOption "Enables lsd.";
- };
-
- config = lib.mkIf config.tools.lsd.enable {
+ config = lib.mkIf config.programs.lsd.enable {
programs.lsd = {
- enable = true;
settings.icons.separator = " ";
};
};
diff --git a/modules/tools/maim/default.nix b/modules/programs/maim/default.nix
index a3525e3..76ef80d 100644
--- a/modules/tools/maim/default.nix
+++ b/modules/programs/maim/default.nix
@@ -7,11 +7,11 @@
# Maim - Screenshot utility (slop-based region selection)
{
- options.tools.maim = {
+ options.programs.maim = {
enable = lib.mkEnableOption "Enables maim.";
};
- config = lib.mkIf config.tools.maim.enable {
+ config = lib.mkIf config.programs.maim.enable {
home.packages = with pkgs; [
maim
];
diff --git a/modules/programs/nixvim/colorscheme.nix b/modules/programs/nixvim/colorscheme.nix
new file mode 100644
index 0000000..ba81634
--- /dev/null
+++ b/modules/programs/nixvim/colorscheme.nix
@@ -0,0 +1,26 @@
+{ config, lib, ... }:
+
+# Colorscheme - Base16 theme configuration for nixvim
+{
+ config.programs.nixvim.colorschemes.base16 = lib.mkIf config.programs.nixvim.enable {
+ enable = true;
+ colorscheme = with config.scheme.withHashtag; {
+ base00 = base00;
+ base01 = base01;
+ base02 = base02;
+ base03 = base03;
+ base04 = base04;
+ base05 = base05;
+ base06 = base06;
+ base07 = base07;
+ base08 = base08;
+ base09 = base09;
+ base0A = base0A;
+ base0B = base0B;
+ base0C = base0C;
+ base0D = base0D;
+ base0E = base0E;
+ base0F = base0F;
+ };
+ };
+}
diff --git a/modules/tools/nixvim/default.nix b/modules/programs/nixvim/default.nix
index be17856..1a66b47 100644
--- a/modules/tools/nixvim/default.nix
+++ b/modules/programs/nixvim/default.nix
@@ -8,13 +8,12 @@
./plugins
];
- options.tools.nixvim = {
+ options.programs.nixvim = {
enable = lib.mkEnableOption "Enables nixvim.";
};
- config = lib.mkIf config.tools.nixvim.enable {
+ config = lib.mkIf config.programs.nixvim.enable {
programs.nixvim = {
- enable = true;
defaultEditor = true;
opts = {
number = true;
diff --git a/modules/programs/nixvim/keymaps.nix b/modules/programs/nixvim/keymaps.nix
new file mode 100644
index 0000000..4e4b35a
--- /dev/null
+++ b/modules/programs/nixvim/keymaps.nix
@@ -0,0 +1,41 @@
+{ config, lib, ... }:
+
+# Keymaps - Keyboard shortcut configuration for nixvim
+{
+ config.programs.nixvim.keymaps = lib.mkIf config.programs.nixvim.enable [
+ {
+ key = "<c-h>";
+ action = "<c-w>h";
+ options.desc = "Move to left window";
+ }
+ {
+ key = "<c-w>";
+ action = "<c-w>j";
+ options.desc = "Move to bottom window";
+ }
+ {
+ key = "<c-k>";
+ action = "<c-w>k";
+ options.desc = "Move to top window";
+ }
+ {
+ key = "<c-l>";
+ action = "<c-w>l";
+ options.desc = "Move to right window";
+ }
+ {
+ key = "<c-n>";
+ action = "<cmd>NvimTreeToggle<cr>";
+ mode = [
+ "n"
+ "i"
+ ];
+ options.desc = "Toggle file explorer";
+ }
+ {
+ key = "<c-c>";
+ action = "<cmd>NotificationsClear<cr>";
+ options.desc = "Clear notifications";
+ }
+ ];
+}
diff --git a/modules/tools/nixvim/plugins/cmp.nix b/modules/programs/nixvim/plugins/cmp.nix
index d849ad6..683e0d3 100644
--- a/modules/tools/nixvim/plugins/cmp.nix
+++ b/modules/programs/nixvim/plugins/cmp.nix
@@ -2,7 +2,7 @@
# Cmp - Completion plugin (nvim-cmp) for auto-completion
{
- config.programs.nixvim.plugins.cmp = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.cmp = lib.mkIf config.programs.nixvim.enable {
enable = true;
autoEnableSources = true;
settings = {
diff --git a/modules/tools/nixvim/plugins/comment.nix b/modules/programs/nixvim/plugins/comment.nix
index 905068f..cc1b9cb 100644
--- a/modules/tools/nixvim/plugins/comment.nix
+++ b/modules/programs/nixvim/plugins/comment.nix
@@ -2,7 +2,7 @@
# Comment - Comment toggling plugin (comment.nvim)
{
- config.programs.nixvim.plugins.comment = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.comment = lib.mkIf config.programs.nixvim.enable {
enable = true;
settings = {
toggler = {
diff --git a/modules/tools/nixvim/plugins/default.nix b/modules/programs/nixvim/plugins/default.nix
index a263c51..a263c51 100644
--- a/modules/tools/nixvim/plugins/default.nix
+++ b/modules/programs/nixvim/plugins/default.nix
diff --git a/modules/tools/nixvim/plugins/gitsigns.nix b/modules/programs/nixvim/plugins/gitsigns.nix
index 4770dba..ea99eba 100644
--- a/modules/tools/nixvim/plugins/gitsigns.nix
+++ b/modules/programs/nixvim/plugins/gitsigns.nix
@@ -2,7 +2,7 @@
# Gitsigns - Git status in the sign column (gitsigns.nvim)
{
- config.programs.nixvim.plugins.gitsigns = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.gitsigns = lib.mkIf config.programs.nixvim.enable {
enable = true;
};
}
diff --git a/modules/tools/nixvim/plugins/indent-blankline.nix b/modules/programs/nixvim/plugins/indent-blankline.nix
index eee2e1f..eb2674a 100644
--- a/modules/tools/nixvim/plugins/indent-blankline.nix
+++ b/modules/programs/nixvim/plugins/indent-blankline.nix
@@ -2,7 +2,7 @@
# Indent-blankline - Visual indentation guides (indent-blankline.nvim)
{
- config.programs.nixvim.plugins.indent-blankline = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.indent-blankline = lib.mkIf config.programs.nixvim.enable {
enable = true;
settings = {
indent = {
diff --git a/modules/tools/nixvim/plugins/lsp.nix b/modules/programs/nixvim/plugins/lsp.nix
index fa7dbe2..dbe66a8 100644
--- a/modules/tools/nixvim/plugins/lsp.nix
+++ b/modules/programs/nixvim/plugins/lsp.nix
@@ -2,7 +2,7 @@
# LSP - Language Server Protocol configuration (nvim-lspconfig)
{
- config.programs.nixvim = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim = lib.mkIf config.programs.nixvim.enable {
plugins.lsp = {
enable = true;
inlayHints = true;
diff --git a/modules/tools/nixvim/plugins/lualine.nix b/modules/programs/nixvim/plugins/lualine.nix
index c1d6fe1..72f34be 100644
--- a/modules/tools/nixvim/plugins/lualine.nix
+++ b/modules/programs/nixvim/plugins/lualine.nix
@@ -2,7 +2,7 @@
# Lualine - Statusline configuration (lualine.nvim)
{
- config.programs.nixvim.plugins.lualine = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.lualine = lib.mkIf config.programs.nixvim.enable {
enable = true;
settings = {
options = {
diff --git a/modules/tools/nixvim/plugins/luasnip.nix b/modules/programs/nixvim/plugins/luasnip.nix
index e1890ea..60571e9 100644
--- a/modules/tools/nixvim/plugins/luasnip.nix
+++ b/modules/programs/nixvim/plugins/luasnip.nix
@@ -2,7 +2,7 @@
# Luasnip - Snippet engine for Neovim (Lua-based)
{
- config.programs.nixvim.plugins.luasnip = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.luasnip = lib.mkIf config.programs.nixvim.enable {
enable = true;
};
}
diff --git a/modules/tools/nixvim/plugins/noice.nix b/modules/programs/nixvim/plugins/noice.nix
index 1c04544..61acf2a 100644
--- a/modules/tools/nixvim/plugins/noice.nix
+++ b/modules/programs/nixvim/plugins/noice.nix
@@ -2,7 +2,7 @@
# Noice - Modern UI for Neovim (cmdline, popupmenu, messages)
{
- config.programs.nixvim.plugins.noice = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.noice = lib.mkIf config.programs.nixvim.enable {
enable = true;
cmdline = {
enabled = true;
diff --git a/modules/tools/nixvim/plugins/nvim-tree.nix b/modules/programs/nixvim/plugins/nvim-tree.nix
index 7f6bf70..2ad6570 100644
--- a/modules/tools/nixvim/plugins/nvim-tree.nix
+++ b/modules/programs/nixvim/plugins/nvim-tree.nix
@@ -2,7 +2,7 @@
# Nvim-tree - File explorer sidebar (nvim-tree.lua)
{
- config.programs.nixvim.plugins.nvim-tree = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.nvim-tree = lib.mkIf config.programs.nixvim.enable {
enable = true;
settings = {
filters = {
diff --git a/modules/tools/nixvim/plugins/telescope.nix b/modules/programs/nixvim/plugins/telescope.nix
index f9fb202..b9678fc 100644
--- a/modules/tools/nixvim/plugins/telescope.nix
+++ b/modules/programs/nixvim/plugins/telescope.nix
@@ -2,7 +2,7 @@
# Telescope - Fuzzy finder
{
- config.programs.nixvim.plugins.telescope = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.telescope = lib.mkIf config.programs.nixvim.enable {
enable = true;
extensions = {
fzf-native.enable = true; # faster fuzzy sorting
diff --git a/modules/tools/nixvim/plugins/treesitter.nix b/modules/programs/nixvim/plugins/treesitter.nix
index 9421851..035ac7a 100644
--- a/modules/tools/nixvim/plugins/treesitter.nix
+++ b/modules/programs/nixvim/plugins/treesitter.nix
@@ -2,7 +2,7 @@
# Treesitter - Syntax highlighting and parsing (nvim-treesitter)
{
- config.programs.nixvim.plugins.treesitter = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.treesitter = lib.mkIf config.programs.nixvim.enable {
enable = true;
folding = {
enable = true;
diff --git a/modules/tools/nixvim/plugins/web-devicons.nix b/modules/programs/nixvim/plugins/web-devicons.nix
index d180fc5..3c6ad86 100644
--- a/modules/tools/nixvim/plugins/web-devicons.nix
+++ b/modules/programs/nixvim/plugins/web-devicons.nix
@@ -2,7 +2,7 @@
# Web-devicons - File icons for various file types (nvim-web-devicons)
{
- config.programs.nixvim.plugins.web-devicons = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.web-devicons = lib.mkIf config.programs.nixvim.enable {
enable = true;
};
}
diff --git a/modules/tools/nixvim/plugins/which-key.nix b/modules/programs/nixvim/plugins/which-key.nix
index c157666..18018e7 100644
--- a/modules/tools/nixvim/plugins/which-key.nix
+++ b/modules/programs/nixvim/plugins/which-key.nix
@@ -2,7 +2,7 @@
# Which-key - Popup for keybindings (which-key.nvim)
{
- config.programs.nixvim.plugins.which-key = lib.mkIf config.tools.nixvim.enable {
+ config.programs.nixvim.plugins.which-key = lib.mkIf config.programs.nixvim.enable {
enable = true;
settings = {
plugins = {
diff --git a/modules/tools/nvtop/default.nix b/modules/programs/nvtop/default.nix
index a7b4917..ef35c21 100644
--- a/modules/tools/nvtop/default.nix
+++ b/modules/programs/nvtop/default.nix
@@ -7,11 +7,11 @@
# Nvtop - GPU process monitor (NVIDIA/AMD/Intel GPUs)
{
- options.tools.nvtop = {
+ options.programs.nvtop = {
enable = lib.mkEnableOption "Enables nvtop.";
};
- config = lib.mkIf config.tools.nvtop.enable {
+ config = lib.mkIf config.programs.nvtop.enable {
home.packages = with pkgs; [
nvtopPackages.full
];
diff --git a/modules/programs/opencode/default.nix b/modules/programs/opencode/default.nix
new file mode 100644
index 0000000..0941db0
--- /dev/null
+++ b/modules/programs/opencode/default.nix
@@ -0,0 +1,5 @@
+{ ... }:
+
+# Opencode - AI-powered coding assistant (opencode.ai)
+{
+}
diff --git a/modules/tools/openvpn/default.nix b/modules/programs/openvpn/default.nix
index 9e1bc58..c70192a 100644
--- a/modules/tools/openvpn/default.nix
+++ b/modules/programs/openvpn/default.nix
@@ -7,11 +7,11 @@
# OpenVPN - Open-source VPN client for secure remote access
{
- options.tools.openvpn = {
+ options.programs.openvpn = {
enable = lib.mkEnableOption "Enables openvpn.";
};
- config = lib.mkIf config.tools.openvpn.enable {
+ config = lib.mkIf config.programs.openvpn.enable {
home.packages = with pkgs; [
openvpn
];
diff --git a/modules/tools/ouch/default.nix b/modules/programs/ouch/default.nix
index 65ee37c..69c8ae5 100644
--- a/modules/tools/ouch/default.nix
+++ b/modules/programs/ouch/default.nix
@@ -7,11 +7,11 @@
# Ouch! - CLI tool for compressing and decompressing various formats.
{
- options.tools.ouch = {
+ options.programs.ouch = {
enable = lib.mkEnableOption "Enables ouch.";
};
- config = lib.mkIf config.tools.ouch.enable {
+ config = lib.mkIf config.programs.ouch.enable {
home.packages = with pkgs; [
ouch
];
diff --git a/modules/tools/pamixer/default.nix b/modules/programs/pamixer/default.nix
index 3d4b64f..8262770 100644
--- a/modules/tools/pamixer/default.nix
+++ b/modules/programs/pamixer/default.nix
@@ -7,11 +7,11 @@
# Pamixer - PulseAudio command-line mixer (volume control)
{
- options.tools.pamixer = {
+ options.programs.pamixer = {
enable = lib.mkEnableOption "Enables pamixer.";
};
- config = lib.mkIf config.tools.pamixer.enable {
+ config = lib.mkIf config.programs.pamixer.enable {
home.packages = with pkgs; [
pamixer
];
diff --git a/modules/tools/playerctl/default.nix b/modules/programs/playerctl/default.nix
index d4fa232..f2b5e67 100644
--- a/modules/tools/playerctl/default.nix
+++ b/modules/programs/playerctl/default.nix
@@ -7,11 +7,11 @@
# Playerctl - CLI for controlling media players (Spotify, MPRIS, etc.)
{
- options.tools.playerctl = {
+ options.programs.playerctl = {
enable = lib.mkEnableOption "Enables playerctl.";
};
- config = lib.mkIf config.tools.playerctl.enable {
+ config = lib.mkIf config.programs.playerctl.enable {
home.packages = with pkgs; [
playerctl
];
diff --git a/modules/tools/qemu/default.nix b/modules/programs/qemu/default.nix
index 7920955..f883636 100644
--- a/modules/tools/qemu/default.nix
+++ b/modules/programs/qemu/default.nix
@@ -7,11 +7,11 @@
# QEMU - generic and open source machine & userspace emulator and virtualizer.
{
- options.tools.qemu = {
+ options.programs.qemu = {
enable = lib.mkEnableOption "Enables qemu.";
};
- config = lib.mkIf config.tools.qemu.enable {
+ config = lib.mkIf config.programs.qemu.enable {
home.packages = with pkgs; [
qemu
libvirt
diff --git a/modules/tools/slop/default.nix b/modules/programs/slop/default.nix
index b3b55bd..115523e 100644
--- a/modules/tools/slop/default.nix
+++ b/modules/programs/slop/default.nix
@@ -7,11 +7,11 @@
# Slop - Region selector for screenshots (used by maim/flameshot)
{
- options.tools.slop = {
+ options.programs.slop = {
enable = lib.mkEnableOption "Enables slop.";
};
- config = lib.mkIf config.tools.slop.enable {
+ config = lib.mkIf config.programs.slop.enable {
home.packages = with pkgs; [
slop
];
diff --git a/modules/tools/openssh/default.nix b/modules/programs/ssh/default.nix
index 974dd3a..dc1bf0e 100644
--- a/modules/tools/openssh/default.nix
+++ b/modules/programs/ssh/default.nix
@@ -7,13 +7,8 @@
# OpenSSH - Secure shell (SSH) client for encrypted remote connections
{
- options.tools.openssh = {
- enable = lib.mkEnableOption "Enables OpenSSH client.";
- };
-
- config = lib.mkIf config.tools.openssh.enable {
+ config = lib.mkIf config.programs.ssh.enable {
programs.ssh = {
- enable = true;
package = pkgs.openssh;
enableDefaultConfig = false;
extraOptionOverrides = {
diff --git a/modules/tools/starship/default.nix b/modules/programs/starship/default.nix
index aacbf60..ae5e082 100644
--- a/modules/tools/starship/default.nix
+++ b/modules/programs/starship/default.nix
@@ -2,14 +2,9 @@
# Starship - Minimal, blazing-fast shell prompt
{
- options.tools.starship = {
- enable = lib.mkEnableOption "Enables starship.";
- };
-
- config = lib.mkIf config.tools.starship.enable {
+ config = lib.mkIf config.programs.starship.enable {
programs.starship = {
- enable = true;
- enableZshIntegration = config.tools.zsh.enable;
+ enableZshIntegration = config.programs.zsh.enable;
settings =
let
mkSegment = content: ''[┄\[](red)[${content}]($style)[\]](red)'';
diff --git a/modules/tools/systemctl-tui/default.nix b/modules/programs/systemctl-tui/default.nix
index aa4f70c..8958d26 100644
--- a/modules/tools/systemctl-tui/default.nix
+++ b/modules/programs/systemctl-tui/default.nix
@@ -7,11 +7,11 @@
# systemctl-tui - TUI for systemctl (systemd service management)
{
- options.tools.systemctl-tui = {
+ options.programs.systemctl-tui = {
enable = lib.mkEnableOption "Enables systemctl-tui.";
};
- config = lib.mkIf config.tools.systemctl-tui.enable {
+ config = lib.mkIf config.programs.systemctl-tui.enable {
home.packages = with pkgs; [
systemctl-tui
];
diff --git a/modules/programs/tmux/default.nix b/modules/programs/tmux/default.nix
new file mode 100644
index 0000000..92d9a94
--- /dev/null
+++ b/modules/programs/tmux/default.nix
@@ -0,0 +1,4 @@
+{ ... }:
+
+# Tmux - Terminal multiplexer (window/pane management)
+{ }
diff --git a/modules/tools/tor/default.nix b/modules/programs/tor/default.nix
index a2af4aa..0b35030 100644
--- a/modules/tools/tor/default.nix
+++ b/modules/programs/tor/default.nix
@@ -7,11 +7,11 @@
# Tor - Local proxy server for connecting to the tor network
{
- options.tools.tor = {
+ options.programs.tor = {
enable = lib.mkEnableOption "Enables tor.";
};
- config = lib.mkIf config.tools.tor.enable {
+ config = lib.mkIf config.programs.tor.enable {
home.packages = with pkgs; [
tor
];
diff --git a/modules/tools/umu-launcher/default.nix b/modules/programs/umu-launcher/default.nix
index b905919..8b46cbd 100644
--- a/modules/tools/umu-launcher/default.nix
+++ b/modules/programs/umu-launcher/default.nix
@@ -7,11 +7,11 @@
# umu-launcher - This is a unified launcher for Windows games on Linux
{
- options.tools.umu-launcher = {
+ options.programs.umu-launcher = {
enable = lib.mkEnableOption "Enables umu-launcher.";
};
- config = lib.mkIf config.tools.umu-launcher.enable {
+ config = lib.mkIf config.programs.umu-launcher.enable {
home.packages = with pkgs; [
umu-launcher
winetricks
diff --git a/modules/tools/vlc/default.nix b/modules/programs/vlc/default.nix
index ba82fcb..3b07ea7 100644
--- a/modules/tools/vlc/default.nix
+++ b/modules/programs/vlc/default.nix
@@ -7,11 +7,11 @@
# VLC - Versatile multimedia player for audio/video playback
{
- options.tools.vlc = {
+ options.programs.vlc = {
enable = lib.mkEnableOption "Enables vlc.";
};
- config = lib.mkIf config.tools.vlc.enable {
+ config = lib.mkIf config.programs.vlc.enable {
home.packages = with pkgs; [
vlc
];
diff --git a/modules/tools/vscode/default.nix b/modules/programs/vscode/default.nix
index 06e49cd..3c57567 100644
--- a/modules/tools/vscode/default.nix
+++ b/modules/programs/vscode/default.nix
@@ -7,13 +7,8 @@
# VSCode - Visual Studio Code (using VSCodium open-source build)
{
- options.tools.vscode = {
- enable = lib.mkEnableOption "Enables vscode.";
- };
-
- config = lib.mkIf config.tools.vscode.enable {
+ config = lib.mkIf config.programs.vscode.enable {
programs.vscode = {
- enable = true;
package = pkgs.vscodium;
};
};
diff --git a/modules/programs/zathura/default.nix b/modules/programs/zathura/default.nix
new file mode 100644
index 0000000..c10ecd2
--- /dev/null
+++ b/modules/programs/zathura/default.nix
@@ -0,0 +1,4 @@
+{ ... }:
+
+# Zathura - Minimalistic document viewer (PDF, DJVU, etc.)
+{ }
diff --git a/modules/tools/zsh/default.nix b/modules/programs/zsh/default.nix
index e1a929b..482c201 100644
--- a/modules/tools/zsh/default.nix
+++ b/modules/programs/zsh/default.nix
@@ -1,18 +1,19 @@
-{ config, lib, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
# Zsh - Z shell, extended bash with additional features and plugins
{
- options.tools.zsh = {
- enable = lib.mkEnableOption "Enables zsh.";
- };
-
config =
let
nixCommandWrappers = builtins.readFile ./nix-aliases.sh;
in
- lib.mkIf config.tools.zsh.enable {
+ lib.mkIf config.programs.zsh.enable {
programs.zsh = {
- enable = true;
+ package = pkgs.zsh;
dotDir = "${config.xdg.configHome}/zsh";
history.path = "${config.xdg.cacheHome}/zsh/history";
enableCompletion = true;
diff --git a/modules/tools/zsh/nix-aliases.sh b/modules/programs/zsh/nix-aliases.sh
index 0a2f453..0a2f453 100644
--- a/modules/tools/zsh/nix-aliases.sh
+++ b/modules/programs/zsh/nix-aliases.sh
diff --git a/modules/scripts/default.nix b/modules/scripts/default.nix
index 13cbfd1..6a78c31 100644
--- a/modules/scripts/default.nix
+++ b/modules/scripts/default.nix
@@ -6,7 +6,7 @@
}:
let
shell =
- if config.tools.zsh.enable then (lib.getExe config.programs.zsh.package) else "/usr/bin/env sh";
+ if config.programs.zsh.enable then (lib.getExe config.programs.zsh.package) else "/usr/bin/env sh";
mkScript =
name: path: env: deps:
@@ -64,20 +64,20 @@ let
];
conditions = [
{
- option = "tools.ffmpeg.enable";
+ option = "programs.ffmpeg.enable";
value = true;
}
{
- option = "tools.ouch.enable";
+ option = "programs.ouch.enable";
value = true;
}
{
# not a dependency
- option = "tools.zathura.enable";
+ option = "programs.zathura.enable";
value = true;
}
{
- option = "tools.bat.enable";
+ option = "programs.bat.enable";
value = true;
}
];
@@ -109,7 +109,7 @@ let
];
conditions = [
{
- option = "tools.fzf.enable";
+ option = "programs.fzf.enable";
value = true;
}
];
@@ -137,11 +137,11 @@ let
];
conditions = [
{
- option = "tools.ffmpeg.enable";
+ option = "programs.ffmpeg.enable";
value = true;
}
{
- option = "tools.slop.enable";
+ option = "programs.slop.enable";
value = true;
}
];
@@ -162,19 +162,19 @@ let
];
conditions = [
{
- option = "tools.bottom.enable";
+ option = "programs.bottom.enable";
value = true;
}
{
- option = "tools.nvtop.enable";
+ option = "programs.nvtop.enable";
value = true;
}
{
- option = "tools.tmux.enable";
+ option = "programs.tmux.enable";
value = true;
}
{
- option = "tools.kitty.enable";
+ option = "programs.kitty.enable";
value = true;
}
];
@@ -192,11 +192,11 @@ let
];
conditions = [
{
- option = "tools.openvpn.enable";
+ option = "programs.openvpn.enable";
value = true;
}
{
- option = "tools.fzf.enable";
+ option = "programs.fzf.enable";
value = true;
}
];
@@ -207,11 +207,11 @@ let
deps = [ ];
conditions = [
{
- option = "tools.openvpn.enable";
+ option = "programs.openvpn.enable";
value = true;
}
{
- option = "tools.fzf.enable";
+ option = "programs.fzf.enable";
value = true;
}
];
diff --git a/modules/tools/bottom/default.nix b/modules/tools/bottom/default.nix
deleted file mode 100644
index 1026768..0000000
--- a/modules/tools/bottom/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ config, lib, ... }:
-
-# Bottom - Cross-platform graphical process/system monitor (Rust-based)
-{
- options.tools.bottom = {
- enable = lib.mkEnableOption "Enables bottom.";
- };
-
- config = lib.mkIf config.tools.bottom.enable {
- programs.bottom.enable = true;
- };
-}
diff --git a/modules/tools/fastfetch/default.nix b/modules/tools/fastfetch/default.nix
deleted file mode 100644
index ca8db6a..0000000
--- a/modules/tools/fastfetch/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ config, lib, ... }:
-
-# Fastfetch - System information tool (like neofetch but faster)
-{
- options.tools.fastfetch = {
- enable = lib.mkEnableOption "Enables fastfetch.";
- };
-
- config = lib.mkIf config.tools.fastfetch.enable {
- programs.fastfetch = {
- enable = true;
- };
- };
-}
diff --git a/modules/tools/feh/default.nix b/modules/tools/feh/default.nix
deleted file mode 100644
index 70ecf1f..0000000
--- a/modules/tools/feh/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ config, lib, ... }:
-
-# Feh - Lightweight image viewer and wallpaper setter
-{
- options.tools.feh = {
- enable = lib.mkEnableOption "Enables feh.";
- };
-
- config = lib.mkIf config.tools.feh.enable {
- programs.feh.enable = true;
- };
-}
diff --git a/modules/tools/nixvim/colorscheme.nix b/modules/tools/nixvim/colorscheme.nix
deleted file mode 100644
index 00ee040..0000000
--- a/modules/tools/nixvim/colorscheme.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ config, lib, ... }:
-
-# Colorscheme - Base16 theme configuration for nixvim
-{
- config = lib.mkIf config.tools.nixvim.enable {
- programs.nixvim.colorschemes.base16 = {
- enable = true;
- colorscheme = with config.scheme.withHashtag; {
- base00 = base00;
- base01 = base01;
- base02 = base02;
- base03 = base03;
- base04 = base04;
- base05 = base05;
- base06 = base06;
- base07 = base07;
- base08 = base08;
- base09 = base09;
- base0A = base0A;
- base0B = base0B;
- base0C = base0C;
- base0D = base0D;
- base0E = base0E;
- base0F = base0F;
- };
- };
- };
-}
diff --git a/modules/tools/nixvim/keymaps.nix b/modules/tools/nixvim/keymaps.nix
deleted file mode 100644
index c16331b..0000000
--- a/modules/tools/nixvim/keymaps.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ config, lib, ... }:
-
-# Keymaps - Keyboard shortcut configuration for nixvim
-{
- config = lib.mkIf config.tools.nixvim.enable {
- programs.nixvim.keymaps = [
- {
- key = "<c-h>";
- action = "<c-w>h";
- options.desc = "Move to left window";
- }
- {
- key = "<c-w>";
- action = "<c-w>j";
- options.desc = "Move to bottom window";
- }
- {
- key = "<c-k>";
- action = "<c-w>k";
- options.desc = "Move to top window";
- }
- {
- key = "<c-l>";
- action = "<c-w>l";
- options.desc = "Move to right window";
- }
- {
- key = "<c-n>";
- action = "<cmd>NvimTreeToggle<cr>";
- mode = [
- "n"
- "i"
- ];
- options.desc = "Toggle file explorer";
- }
- {
- key = "<c-c>";
- action = "<cmd>NotificationsClear<cr>";
- options.desc = "Clear notifications";
- }
- ];
- };
-}
diff --git a/modules/tools/opencode/default.nix b/modules/tools/opencode/default.nix
deleted file mode 100644
index 127c2fb..0000000
--- a/modules/tools/opencode/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- config,
- lib,
- ...
-}:
-
-# Opencode - AI-powered coding assistant (opencode.ai)
-{
- options.tools.opencode = {
- enable = lib.mkEnableOption "Enables opencode.";
- };
-
- config = lib.mkIf config.tools.opencode.enable {
- programs.opencode = {
- enable = true;
- };
- };
-}
diff --git a/modules/tools/tmux/default.nix b/modules/tools/tmux/default.nix
deleted file mode 100644
index 2265894..0000000
--- a/modules/tools/tmux/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ config, lib, ... }:
-
-# Tmux - Terminal multiplexer (window/pane management)
-{
- options.tools.tmux = {
- enable = lib.mkEnableOption "Enables tmux.";
- };
-
- config = lib.mkIf config.tools.tmux.enable {
- programs.tmux.enable = true;
- };
-}
diff --git a/modules/tools/zathura/default.nix b/modules/tools/zathura/default.nix
deleted file mode 100644
index 6e271f9..0000000
--- a/modules/tools/zathura/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ config, lib, ... }:
-
-# Zathura - Minimalistic document viewer (PDF, DJVU, etc.)
-{
- options.tools.zathura = {
- enable = lib.mkEnableOption "Enables zathura.";
- };
-
- config = lib.mkIf config.tools.zathura.enable {
- programs.zathura.enable = true;
- };
-}