summaryrefslogtreecommitdiff
path: root/hm
diff options
context:
space:
mode:
authoradikro <adikro@disroot.org>2026-02-03 22:58:50 +0100
committeradikro <adikro@disroot.org>2026-02-03 22:58:50 +0100
commiteb95abfc230dc239122f1e89e90cd9a998491a2f (patch)
tree9d60efacf83b97059f6300e360be2248f8e9c57e /hm
parente5036417abe5d3597792f869e2831decd50eba5d (diff)
...
Diffstat (limited to 'hm')
-rw-r--r--hm/editors/nixvim.nix255
-rw-r--r--hm/env/niri/binds.nix247
-rw-r--r--hm/env/niri/niri.nix32
-rw-r--r--hm/env/screenshot.nix12
-rw-r--r--hm/env/waybar.nix14
-rw-r--r--hm/shell/cli.nix46
-rw-r--r--hm/soft/browser.nix114
-rw-r--r--hm/soft/media.nix15
-rw-r--r--hm/soft/nixcord.nix12
9 files changed, 401 insertions, 346 deletions
diff --git a/hm/editors/nixvim.nix b/hm/editors/nixvim.nix
index 51fdf95..e46f6e2 100644
--- a/hm/editors/nixvim.nix
+++ b/hm/editors/nixvim.nix
@@ -1,4 +1,10 @@
-{ inputs, config, lib, pkgs, ... }:
+{
+ inputs,
+ config,
+ lib,
+ pkgs,
+ ...
+}:
let
cfg = config.hm.editors.nixvim;
in
@@ -6,8 +12,10 @@ in
imports = [ inputs.nixvim.homeModules.nixvim ];
options.hm.editors.nixvim.enable = lib.mkEnableOption "enables nixvim config framework";
+
config = lib.mkIf cfg.enable {
programs.nixvim = {
+ diagnostics.virtual_text = false;
enable = true;
package = inputs.neovim-nightly-overlay.packages.${pkgs.stdenv.hostPlatform.system}.default;
@@ -19,21 +27,82 @@ in
globals.mapleader = " ";
+ clipboard = {
+ providers.wl-copy.enable = true;
+ register = "unnamedplus";
+ };
+
+ opts = {
+ number = true;
+ relativenumber = true;
+ termguicolors = true;
+ ignorecase = true;
+ smartcase = true;
+ expandtab = true;
+ shiftwidth = 2;
+ encoding = "utf-8";
+ fileencoding = "utf-8";
+ undofile = true;
+ swapfile = true;
+ backup = false;
+ autoread = true;
+ cursorline = true;
+ ruler = true;
+ gdefault = true;
+ scrolloff = 5;
+ };
+
keymaps = [
{
- # mode = [ "n" "i" "v" ];
+ mode = [ "" ];
key = "<F1>";
action = "<NOP>";
options.silent = true;
}
{
mode = "n";
+ key = "<leader>gs";
+ action = "<cmd>Neogit<CR>";
+ options.desc = "Neogit Status";
+ }
+ {
+ mode = "n";
key = "<leader>ff";
action = "<cmd>Telescope find_files<CR>";
options.desc = "Find Files";
}
{
mode = "n";
+ key = "gd";
+ action = "<cmd>lua vim.lsp.buf.definition()<CR>";
+ options.desc = "Go to Definition";
+ }
+ {
+ mode = "n";
+ key = "K";
+ action = "<cmd>lua vim.lsp.buf.hover()<CR>";
+ options.desc = "Hover Docs";
+ }
+ {
+ mode = "n";
+ key = "<leader>ca";
+ action = "<cmd>lua vim.lsp.buf.code_action()<CR>";
+ options.desc = "Code Actions";
+ }
+ {
+ mode = "n";
+ key = "<leader>rn";
+ action = "<cmd>lua vim.lsp.buf.rename()<CR>";
+ options.desc = "Rename Symbol";
+ }
+ {
+ mode = "n";
+ key = "<leauer>fs";
+ action = "<cmd>Telescope lsp_document_symbols<CR>";
+ options.desc = "Find Symbols (Functions/Variables)";
+ }
+ {
+ mode = "n";
key = "<leader>fg";
action = "<cmd>Telescope live_grep<CR>";
options.desc = "Live Grep";
@@ -62,14 +131,60 @@ in
action = "<cmd>Trouble diagnostics toggle<CR>";
options.desc = "Toggle Trouble (Diagnostics)";
}
+ {
+ mode = "n";
+ key = "<leader>p";
+ action = "<cmd>Telescope yank_history<CR>";
+ options.desc = "Open Yank History";
+ }
];
- plugins = {
- lualine = {
- enable = true;
- settings.options.theme = "gruvbox-material";
- };
- multicursors.enable = true;
+ plugins = {
+ overseer.enable = true;
+ neotest.enable = true;
+
+ tiny-inline-diagnostic = {
+ enable = true;
+ settings = {
+ preset = "minimal";
+ show_all_diags_on_cursorline = true;
+ options = {
+ multilines = {
+ enabled = true;
+ always_show = true;
+ };
+ };
+ };
+ };
+ comment.enable = true;
+ flash = {
+ enable = true;
+ settings = {
+ search.enabled = true;
+ jump.autojump = true;
+ };
+ };
+ notify = {
+ enable = true;
+ settings.topDown = false;
+ };
+ yanky = {
+ enable = true;
+ settings.ring.history_length = 100;
+ settings.system_clipboard.sync_with_ring = true;
+ };
+ lualine = {
+ enable = true;
+ settings = {
+ options.theme = "gruvbox-material";
+ sections = {
+ lualine_b = [ "diagnostics" ];
+ lualine_c = [ "filename" ];
+ lualine_x = [ "filetype" ];
+ };
+ };
+ };
+
treesitter-context = {
enable = true;
settings = {
@@ -77,87 +192,75 @@ in
trim_scope = "outer";
};
};
- oil.enable = true;
- persistence.enable = true;
- nvim-autopairs.enable = true;
- neoscroll.enable = true;
- bufferline.enable = true;
- web-devicons.enable = true;
+ oil.enable = true;
+ nvim-autopairs.enable = true;
+ neoscroll.enable = true;
+ bufferline.enable = true;
+ web-devicons.enable = true;
+ lsp-kind.enable = true;
- blink-cmp.enable = true;
- gitsigns.enable = true;
- which-key.enable = true;
- harpoon = {
- enable = true;
- enableTelescope = true;
- };
- toggleterm.enable = true;
- treesitter = {
- enable = true;
- };
- telescope = {
- enable = true;
- extensions = {
- fzf-native = {
- enable = true;
- };
+ blink-cmp = {
+ enable = true;
+ settings = {
+ keymap = {
+ preset = "default";
+ "<C-space>" = [
+ "show"
+ "show_documentation"
+ "hide"
+ ];
+ "<CR>" = [
+ "accept"
+ "fallback"
+ ];
+ "<Tab>" = [
+ "select_next"
+ "fallback"
+ ];
+ "<S-Tab>" = [
+ "select_prev"
+ "fallback"
+ ];
};
};
+ };
+ gitsigns.enable = true;
+ which-key.enable = true;
+ harpoon = {
+ enable = true;
+ enableTelescope = true;
+ };
+ toggleterm.enable = true;
+ treesitter.enable = true;
+ telescope = {
+ enable = true;
+ extensions.fzf-native.enable = true;
+ };
noice.enable = true;
dressing.enable = true;
- trouble.enable = true;
+
conform-nvim = {
enable = true;
- settings.format_on_save = {
- lsp_fallback = true;
- timeout_ms = 500;
+ settings = {
+ formatters_by_ft = {
+ nix = [ "alejandra" ];
+ };
+ format_on_save = {
+ lsp_fallback = true;
+ timeout_ms = 500;
+ };
};
};
- # notify = {
- # enable = true;
- # settings = {
- # backgroundColour = "#1e1e2e";
- # fps = 60;
- # render = "default";
- # timeout = 500;
- # topDown = true;
- # };
- # };
-
- nix.enable = true;
- lsp = {
- enable = true;
- servers = {
+ lsp = {
+ enable = true;
+ servers = {
+ zls.enable = true;
+ zls.package = pkgs.zls;
nil_ls.enable = true;
clangd.enable = true;
- };
- };
- };
-
- opts = {
- number = true;
- relativenumber = true;
- termguicolors = true;
- # mouse = "a";
- ignorecase = true;
- smartcase = true;
- expandtab = true;
- shiftwidth = 2;
- encoding = "utf-8";
- fileencoding = "utf-8";
- undofile = true;
- swapfile = true;
- backup = false;
- autoread = true;
- cursorline = true;
- ruler = true;
- gdefault = true;
- scrolloff = 5;
- clipboard = {
- providers.wl-copy.enable = true;
- register = "unnamedplus";
+ };
};
};
};
diff --git a/hm/env/niri/binds.nix b/hm/env/niri/binds.nix
index 4cf92e0..fd46c17 100644
--- a/hm/env/niri/binds.nix
+++ b/hm/env/niri/binds.nix
@@ -4,147 +4,156 @@
pkgs,
...
}:
-with config.lib.niri.actions;
-let
+with config.lib.niri.actions; let
playerctl = spawn "${pkgs.playerctl}/bin/playerctl";
ss = "${toString config.hm.conf.xdg-dirs.mediaPath}/pics/ss/$(date +%Y-%m-%d_%H-%M-%S)";
in
-{
- "Mod+O" = {
- action = toggle-overview;
- repeat = false;
- };
- "Mod+Slash".action = show-hotkey-overlay;
+ {
+ "Mod+O" = {
+ action = toggle-overview;
+ repeat = false;
+ };
+ "Mod+Slash".action = show-hotkey-overlay;
- XF86AudioRaiseVolume.action = playerctl "volume" "0.03+";
- XF86AudioLowerVolume.action = playerctl "volume" "0.03-";
- XF86AudioMute.action = spawn "sh" "-c" ''
- wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && \
- wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
- '';
- # XF86Tools.action = spawn "sh" "-c" ''
- # wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && \
- # wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
- # '';
- "XF86Tools" = {
- action = spawn "sh" "-c" ''
- pkill -9 firefox || true
- swaylock -f
- wpctl set-mute @DEFAULT_AUDIO_SINK@ 1
- wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 1
- niri msg action power-off-monitors
+ XF86AudioRaiseVolume.action = playerctl "volume" "0.03+";
+ XF86AudioLowerVolume.action = playerctl "volume" "0.03-";
+ XF86AudioMute.action = spawn "sh" "-c" ''
+ wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && \
+ wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
+ '';
+ XF86Tools.action = spawn "sh" "-c" ''
+ wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && \
+ wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
'';
- repeat = false;
- };
- "Mod+WheelScrollDown".action = focus-column-right;
- "Mod+WheelScrollUp".action = focus-column-left;
- "Mod+Shift+WheelScrollDown".action = move-column-right;
- "Mod+Shift+WheelScrollUp".action = move-column-left;
+ "Mod+WheelScrollDown".action = focus-column-right;
+ "Mod+WheelScrollUp".action = focus-column-left;
+ "Mod+Shift+WheelScrollDown".action = move-column-right;
+ "Mod+Shift+WheelScrollUp".action = move-column-left;
- "Super+WheelScrollDown".action = focus-workspace-down;
- "Super+WheelScrollUp".action = focus-workspace-up;
- "Super+Shift+WheelScrollDown".action = move-window-down-or-to-workspace-down;
- "Super+Shift+WheelScrollUp".action = move-window-up-or-to-workspace-up;
+ "Super+WheelScrollDown".action = focus-workspace-down;
+ "Super+WheelScrollUp".action = focus-workspace-up;
+ "Super+Shift+WheelScrollDown".action = move-window-down-or-to-workspace-down;
+ "Super+Shift+WheelScrollUp".action = move-window-up-or-to-workspace-up;
- XF86Launch5.action = consume-or-expel-window-right;
- XF86Launch6.action = consume-or-expel-window-left;
- XF86Launch7.action = switch-preset-column-width;
+ XF86Launch5.action = consume-or-expel-window-right;
+ XF86Launch6.action = consume-or-expel-window-left;
+ XF86Launch7.action = switch-preset-column-width;
- "Super+Shift+L".action = spawn "swaylock" "-f";
- XF86AudioPlay.action = playerctl "play-pause";
- XF86AudioPrev.action = playerctl "previous";
- XF86AudioNext.action = playerctl "next";
+ "Super+Shift+L".action = spawn "swaylock" "-f";
+ XF86AudioPlay.action = playerctl "play-pause";
+ XF86AudioPrev.action = playerctl "previous";
+ XF86AudioNext.action = playerctl "next";
- "Mod+Minus".action = set-column-width "-10%";
- "Mod+Equal".action = set-column-width "+10%";
+ "Mod+Minus".action = set-column-width "-10%";
+ "Mod+Equal".action = set-column-width "+10%";
- "Mod+Shift+Minus".action = set-window-height "-10%";
- "Mod+Shift+Equal".action = set-window-height "+10%";
+ "Mod+Shift+Minus".action = set-window-height "-10%";
+ "Mod+Shift+Equal".action = set-window-height "+10%";
- "Mod+Shift+V".action = toggle-window-floating;
- "Mod+W".action = toggle-column-tabbed-display;
+ "Mod+Shift+V".action = toggle-window-floating;
+ "Mod+W".action = toggle-column-tabbed-display;
- "Mod+XF86Launch7" = {
- action = spawn "sh" "-c" ''
- grim -g "$(slurp)" - | tee ${ss}.png | wl-copy
- '';
- repeat = false;
- };
- "Mod+Shift+XF86Launch7" = {
- action = spawn "sh" "-c" ''
- grim -g "$(slurp)" ${ss}.png
- satty --filename "${ss}.png" --output-filename "${ss}-edited.png"
- '';
- repeat = false;
- };
+ "Mod+XF86Launch7" = {
+ action = spawn "sh" "-c" ''
+ wayfreeze &
+ sleep 0.1
+ GEOM=$(slurp)
+ if [ -n "$GEOM" ]; then
+ grim -g "$GEOM" - | tee ${ss}.png | wl-copy
+ fi
+ pkill -n wayfreeze
+ '';
+ repeat = false;
+ };
- "Mod+S" = {
- action = spawn "sh" "-c" ''
- grim -g "$(slurp)" - | tee ${ss}.png | wl-copy
- '';
- repeat = false;
- };
+ "Mod+Shift+XF86Launch7" = {
+ action = spawn "sh" "-c" ''
+ wayfreeze &
+ sleep 0.1
+ GEOM=$(slurp)
+ if [ -n "$GEOM" ]; then
+ grim -g "$GEOM" -t ppm - | satty --filename - --output-filename "${ss}-edited.png"
+ fi
+ pkill -n wayfreeze
+ '';
+ repeat = false;
+ };
- "Mod+Shift+S" = {
- action = spawn "sh" "-c" ''
- grim -g "$(slurp)" ${ss}.png
- satty --filename "${ss}.png" --output-filename "${ss}-edited.png"
- '';
- repeat = false;
- };
+ "Mod+S" = {
+ action = spawn "sh" "-c" ''
+ wayfreeze &
+ sleep 0.1
+ GEOM=$(slurp)
+ if [ -n "$GEOM" ]; then
+ grim -g "$GEOM" - | tee ${ss}.png | wl-copy
+ fi
+ pkill -n wayfreeze
+ '';
+ repeat = false;
+ };
- "Mod+Shift+D".action = spawn "sh" "-c" ''
- cliphist list | fuzzel --dmenu | cliphist decode | wl-copy
- '';
+ "Mod+Shift+S" = {
+ action = spawn "sh" "-c" ''
+ wayfreeze &
+ sleep 0.1
+ GEOM=$(slurp)
+ if [ -n "$GEOM" ]; then
+ grim -g "$GEOM" -t ppm - | satty --filename - --output-filename "${ss}-edited.png"
+ fi
+ pkill -n wayfreeze
+ '';
+ repeat = false;
+ };
- "Mod+Return".action = spawn "foot";
- "Mod+D".action = spawn "fuzzel";
- "Mod+C".action = spawn "qalculate-gtk";
- "Mod+BracketLeft".action = consume-or-expel-window-left;
- "Mod+BracketRight".action = consume-or-expel-window-right;
+ "Mod+Shift+D".action = spawn "sh" "-c" ''
+ cliphist list | fuzzel --dmenu | cliphist decode | wl-copy
+ '';
- "Mod+R".action = switch-preset-column-width;
- "Mod+Shift+R".action = reset-window-height;
- "Mod+F".action = maximize-column;
- "Mod+Shift+F".action = fullscreen-window;
+ "Mod+Return".action = spawn "foot";
+ "Mod+D".action = spawn "fuzzel";
+ "Mod+C".action = spawn "qalculate-gtk";
+ "Mod+BracketLeft".action = consume-or-expel-window-left;
+ "Mod+BracketRight".action = consume-or-expel-window-right;
- "Mod+Comma".action = consume-window-into-column;
- "Mod+Period".action = expel-window-from-column;
+ "Mod+R".action = switch-preset-column-width;
+ "Mod+Shift+R".action = reset-window-height;
+ "Mod+F".action = maximize-column;
+ "Mod+Shift+F".action = fullscreen-window;
- "Mod+Shift+E".action = quit;
+ "Mod+Comma".action = consume-window-into-column;
+ "Mod+Period".action = expel-window-from-column;
- "Mod+H".action = focus-column-left;
- "Mod+L".action = focus-column-right;
- "Mod+J".action = focus-workspace-down;
- "Mod+K".action = focus-workspace-up;
+ "Mod+Shift+E".action = quit;
- "Mod+Shift+H".action = move-column-left;
- "Mod+Shift+L".action = move-column-right;
- "Mod+Shift+J".action = move-window-down-or-to-workspace-down;
- "Mod+Shift+K".action = move-window-up-or-to-workspace-up;
+ "Mod+H".action = focus-column-left;
+ "Mod+L".action = focus-column-right;
+ "Mod+J".action = focus-workspace-down;
+ "Mod+K".action = focus-workspace-up;
- "Mod+Shift+Q".action = close-window;
+ "Mod+Shift+H".action = move-column-left;
+ "Mod+Shift+L".action = move-column-right;
+ "Mod+Shift+J".action = move-window-down-or-to-workspace-down;
+ "Mod+Shift+K".action = move-window-up-or-to-workspace-up;
- "Super+Return".action = spawn "obs-cmd" "replay" "save";
+ "Mod+Shift+Q".action = close-window;
-}
-// (builtins.listToAttrs (
- builtins.concatMap (
- keyNum:
- let
- key = toString keyNum;
- targetWS = keyNum + 1;
- in
- [
- {
- name = "Mod+${key}";
- value.action = focus-workspace targetWS;
- }
- {
- name = "Mod+Shift+${key}";
- value.action.move-column-to-workspace = [ targetWS ];
- }
- ]
- ) (lib.range 1 9)
-))
+ "Super+Return".action = spawn "obs-cmd" "replay" "save";
+ }
+ // (builtins.listToAttrs (
+ builtins.concatMap (
+ keyNum: let
+ key = toString keyNum;
+ targetWS = keyNum + 1;
+ in [
+ {
+ name = "Mod+${key}";
+ value.action = focus-workspace targetWS;
+ }
+ {
+ name = "Mod+Shift+${key}";
+ value.action.move-column-to-workspace = [targetWS];
+ }
+ ]
+ ) (lib.range 1 9)
+ ))
diff --git a/hm/env/niri/niri.nix b/hm/env/niri/niri.nix
index b751d3d..3f66f6e 100644
--- a/hm/env/niri/niri.nix
+++ b/hm/env/niri/niri.nix
@@ -1,8 +1,11 @@
-{ config, lib, pkgs, ... }:
-let
- cfg = config.hm.env.niri;
-in
{
+ config,
+ lib,
+ pkgs,
+ ...
+}: let
+ cfg = config.hm.env.niri;
+in {
options.hm.env.niri.enable = lib.mkEnableOption "niri hm";
config = lib.mkIf cfg.enable {
hm.env = {
@@ -15,9 +18,8 @@ in
programs.niri.settings = {
debug.disable-cursor-plane = [];
- binds = import ./binds.nix { inherit config lib pkgs; };
+ binds = import ./binds.nix {inherit config lib pkgs;};
- # animations.enable = false;
prefer-no-csd = true;
hotkey-overlay.skip-at-startup = true;
input = {
@@ -53,7 +55,6 @@ in
cursor = {
hide-when-typing = true;
size = 48;
- theme = "miyabi";
};
layout = {
empty-workspace-above-first = true;
@@ -66,14 +67,14 @@ in
# active = <decoration>;
};
preset-column-widths = [
- { proportion = 1. / 3.; }
- { proportion = 1. / 2.; }
- { proportion = 2. / 3.; }
+ {proportion = 1. / 3.;}
+ {proportion = 1. / 2.;}
+ {proportion = 2. / 3.;}
];
preset-window-heights = [
- { proportion = 1. / 3.; }
- { proportion = 1. / 2.; }
- { proportion = 2. / 3.; }
+ {proportion = 1. / 3.;}
+ {proportion = 1. / 2.;}
+ {proportion = 2. / 3.;}
];
default-column-width.proportion = 0.5;
tab-indicator = {
@@ -84,15 +85,14 @@ in
window-rules = [
{
matches = [
- { app-id = "Bitwarden"; }
+ {app-id = "Bitwarden";}
];
block-out-from = "screen-capture";
}
];
gestures.hot-corners.enable = false;
spawn-at-startup = [
- { command = [ "waybar" ]; }
- { command = [ "obs" "--disable-missing-files-check" "--startreplaybuffer" ]; }
+ {command = ["obs" "--disable-missing-files-check" "--startreplaybuffer"];}
];
};
home.packages = with pkgs; [
diff --git a/hm/env/screenshot.nix b/hm/env/screenshot.nix
index e61e3de..eac2fe7 100644
--- a/hm/env/screenshot.nix
+++ b/hm/env/screenshot.nix
@@ -1,14 +1,18 @@
-{ config, lib, pkgs, ... }:
-let
- cfg = config.hm.env.screenshot;
-in
{
+ config,
+ lib,
+ pkgs,
+ ...
+}: let
+ cfg = config.hm.env.screenshot;
+in {
options.hm.env.screenshot.enable = lib.mkEnableOption "enables screenshot utilities";
config = lib.mkIf cfg.enable {
programs.satty = {
enable = true;
};
home.packages = with pkgs; [
+ wayfreeze
grim
slurp
];
diff --git a/hm/env/waybar.nix b/hm/env/waybar.nix
index 182a4fb..b75cc91 100644
--- a/hm/env/waybar.nix
+++ b/hm/env/waybar.nix
@@ -1,12 +1,18 @@
-{ config, lib, ... }:
-let
- cfg = config.hm.env.waybar;
-in
{
+ config,
+ lib,
+ ...
+}: let
+ cfg = config.hm.env.waybar;
+in {
options.hm.env.waybar.enable = lib.mkEnableOption "enables waybar";
config = lib.mkIf cfg.enable {
programs.waybar = {
enable = true;
+ systemd = {
+ enable = true;
+ target = "graphical-session.target";
+ };
};
};
}
diff --git a/hm/shell/cli.nix b/hm/shell/cli.nix
index b02922b..142fda5 100644
--- a/hm/shell/cli.nix
+++ b/hm/shell/cli.nix
@@ -3,16 +3,14 @@
lib,
pkgs,
...
-}:
-let
+}: let
cfg = config.hm.shell.cli;
-in
-{
+in {
options.hm.shell.cli.enable = lib.mkEnableOption "modern cli tools";
config = lib.mkIf cfg.enable {
programs.zoxide = {
enable = true;
- options = [ "--cmd cd" ];
+ options = ["--cmd cd"];
};
programs.bat = {
enable = true;
@@ -25,7 +23,43 @@ in
programs.ripgrep.enable = true;
programs.yazi.enable = true;
programs.btop.enable = true;
- programs.fastfetch.enable = true;
+ programs.fastfetch = {
+ enable = true;
+ settings = {
+ display = {
+ size = {
+ binaryPrefix = "iec";
+ };
+ separator = "  ";
+ };
+ multithreading = true;
+ modules = [
+ "title"
+ "separator"
+ "os"
+ {
+ type = "command";
+ key = "Generation";
+ text = "readlink /nix/var/nix/profiles/system | cut -d- -f2";
+ }
+ "kernel"
+ "uptime"
+ "processes"
+ "shell"
+ "display"
+ "wm"
+ "terminal"
+ "cpu"
+ "gpu"
+ "memory"
+ "swap"
+ "disk"
+ "localip"
+ "break"
+ "colors"
+ ];
+ };
+ };
programs.direnv.enable = true;
programs.jq.enable = true;
programs.nix-your-shell = {
diff --git a/hm/soft/browser.nix b/hm/soft/browser.nix
index 72f13c3..a9a2f1b 100644
--- a/hm/soft/browser.nix
+++ b/hm/soft/browser.nix
@@ -3,11 +3,9 @@
lib,
pkgs,
...
-}:
-let
+}: let
cfg = config.hm.soft.browser;
-in
-{
+in {
options.hm.soft.browser = {
librewolf.enable = lib.mkEnableOption "LibreWolf browser";
brave.enable = lib.mkEnableOption "Brave browser";
@@ -16,125 +14,23 @@ in
(lib.mkIf cfg.librewolf.enable {
programs.librewolf = {
enable = true;
- profiles = {
- main = {
- isDefault = true;
- name = "main";
- extensions = { };
- bookmarks = {
- force = true;
- settings = [
- {
- name = "Toolbar Root";
- toolbar = true;
- bookmarks = [
- {
- name = "Youtube";
- tags = [ "yt" ];
- keyword = "yt";
- url = "https://www.youtube.com";
- }
- {
- name = "cwel";
- tags = [ "cwel" ];
- keyword = "cwel";
- url = "https://gemini.google.com/app";
- }
- ];
- }
- ];
- };
- search = {
- force = true;
- default = "SearXNG";
- privateDefault = "SearXNG";
- engines = {
- "SearXNG" = {
- urls = [ { template = "https://searx.tiekoetter.com/search?q={searchTerms}"; } ];
- icon = "https://searx.tiekoetter.com/favicon.ico";
- definedAliases = [ "@s" ];
- };
- "Nixos Packages" = {
- urls = [
- {
- template = "https://search.nixos.org/packages";
- params = [
- {
- name = "channel";
- value = "unstable";
- }
- {
- name = "query";
- value = "{searchTerms}";
- }
- ];
- }
- ];
- icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
- definedAliases = [ "@nix" ];
- };
- "HM Options" = {
- urls = [
- {
- template = "https://home-manager-options.extranix.com";
- params = [
- {
- name = "query";
- value = "{searchTerms}";
- }
- {
- name = "release";
- value = "master";
- }
- ];
- }
- ];
- };
- "google".metaData.hidden = true;
- "amazondotcom-us".metaData.hidden = true;
- "bing".metaData.hidden = true;
- "ebay".metaData.hidden = true;
- "duckduckgo".metaData.hidden = true;
- "wikipedia".metaData.hidden = true;
- "perplexity".metaData.hidden = true;
- };
- };
- settings = { };
- };
- };
settings = {
"ui.key.menuAccessKeyFocuses" = false;
"browser.search.update" = false;
"browser.formfill.enable" = false;
"browser.search.suggest.enabled" = false;
"signon.rememberSignons" = false;
-
- "browser.urlbar.suggest.history" = false;
- "browser.urlbar.suggest.bookmark" = false;
- "browser.urlbar.suggest.openpage" = false;
- "browser.urlbar.suggest.engines" = false;
- "browser.urlbar.suggest.topsites" = false;
"browser.urlbar.showSearchTerms.featureGate" = false;
-
"browser.toolbars.bookmarks.visibility" = "always";
- "privacy.clearOnShutdown.cookies" = true;
- "privacy.clearOnShutdown.cache" = true;
-
- "network.cookie.lifetimePolicy" = 0;
- "privacy.cpd.cookies" = true;
-
- # "extensions.activeThemeID" = "firefox-compact-dark@mozilla.org";
- # "layout.css.prefers-color-scheme.content-override" = 0;
- # "browser.theme.content-theme" = 0;
- # "browser.theme.toolbar-theme" = 0;
+ # "privacy.clearOnShutdown.cookies" = true;
+ # "privacy.clearOnShutdown.cache" = true;
};
};
- home.packages = [ pkgs.nixos-icons ];
})
(lib.mkIf cfg.brave.enable {
- home.packages = [ pkgs.brave ];
+ home.packages = [pkgs.brave];
})
];
}
diff --git a/hm/soft/media.nix b/hm/soft/media.nix
index 3ea4dfa..8dcd6de 100644
--- a/hm/soft/media.nix
+++ b/hm/soft/media.nix
@@ -1,14 +1,14 @@
-{ config, lib, pkgs, ... }:
-let
- cfg = config.hm.soft.media;
-in
{
+ config,
+ lib,
+ pkgs,
+ ...
+}: let
+ cfg = config.hm.soft.media;
+in {
options.hm.soft.media.enable = lib.mkEnableOption "media cli tools";
config = lib.mkIf cfg.enable {
home.packages = with pkgs; [
- krita
- gimp
- zathura
pinta
ffmpeg
imagemagick
@@ -16,4 +16,3 @@ in
];
};
}
-
diff --git a/hm/soft/nixcord.nix b/hm/soft/nixcord.nix
index 77d4adb..e1345b2 100644
--- a/hm/soft/nixcord.nix
+++ b/hm/soft/nixcord.nix
@@ -2,6 +2,7 @@
inputs,
config,
lib,
+ pkgs,
...
}:
let
@@ -12,6 +13,9 @@ in
options.hm.soft.nixcord.enable = lib.mkEnableOption "nixcord configuration";
config = lib.mkIf cfg.enable {
+ home.packages = with pkgs; [
+ equibop
+ ];
programs.nixcord = {
enable = true;
discord = {
@@ -21,10 +25,10 @@ in
vencord.enable = false;
equicord.enable = true;
};
- equibop = {
- enable = true;
- autoscroll.enable = true;
- };
+ # equibop = {
+ # enable = true;
+ # autoscroll.enable = true;
+ # };
config = {
frameless = true;
plugins = {