summaryrefslogtreecommitdiffstats
path: root/modules/programs
diff options
context:
space:
mode:
Diffstat (limited to 'modules/programs')
-rw-r--r--modules/programs/default.nix5
-rw-r--r--modules/programs/newsboat.nix12
-rw-r--r--modules/programs/programs.nix18
-rw-r--r--modules/programs/tmux/default.nix42
4 files changed, 77 insertions, 0 deletions
diff --git a/modules/programs/default.nix b/modules/programs/default.nix
new file mode 100644
index 0000000..b90ff8f
--- /dev/null
+++ b/modules/programs/default.nix
@@ -0,0 +1,5 @@
+[
+ ./tmux
+ ./newsboat.nix
+ ./programs.nix
+]
diff --git a/modules/programs/newsboat.nix b/modules/programs/newsboat.nix
new file mode 100644
index 0000000..b37d765
--- /dev/null
+++ b/modules/programs/newsboat.nix
@@ -0,0 +1,12 @@
+{ config, lib, pkgs, user, ... }:
+with lib;
+{
+ config.home-manager.users.${user} = {
+ programs.newsboat = {
+ enable = true;
+ extraConfig = mkIf (config.xserver.enable) ''
+macro y set browser "mpv %u" ; open-in-browser ; set browser "firefox %u"
+ '';
+ };
+ };
+}
diff --git a/modules/programs/programs.nix b/modules/programs/programs.nix
new file mode 100644
index 0000000..b9d46c1
--- /dev/null
+++ b/modules/programs/programs.nix
@@ -0,0 +1,18 @@
+{ config, lib, pkgs, user, ... }:
+with lib;
+{
+ config.home-manager.users.${user} = mkIf (config.xserver.enable) {
+ home.packages = with pkgs; [
+ libreoffice
+ hunspell
+ hunspellDicts.en_US
+
+ (pass.withExtensions (exts: [exts.pass-otp ]))
+ thefuck
+ mpc-cli
+ pavucontrol
+ qbittorrent
+ ffmpeg
+ ];
+ };
+}
diff --git a/modules/programs/tmux/default.nix b/modules/programs/tmux/default.nix
new file mode 100644
index 0000000..b141af6
--- /dev/null
+++ b/modules/programs/tmux/default.nix
@@ -0,0 +1,42 @@
+{ config, lib, pkgs, user, ... }:
+with lib;
+{
+ config.home-manager.users.${user} = {
+ programs.tmux = {
+ enable = true;
+ terminal = "tmux-256color";
+ historyLimit = 10000;
+ plugins = with pkgs.tmuxPlugins;
+ [
+ catppuccin
+ vim-tmux-navigator
+ sensible
+ yank
+ ];
+ shell = "${pkgs.zsh}/bin/zsh";
+ extraConfig = ''
+set-option -sa terminal-overrides ",xterm*:Tc"
+set -g mouse on
+
+unbind C-b
+set -g prefix C-Space
+bind C-Space send-prefix
+
+bind -n M-H previous-window
+bind -n M-L next-window
+
+set -g base-index 1
+set -g pane-base-index 1
+set-window-option -g pane-base-index 1
+set-option -g renumber-windows on
+
+bind-key -T copy-mode-vi v send-keys -X begin-selection
+bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
+bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
+
+bind '"' split-window -v -c ''${pane_current_path}"
+bind % split-window -h -c ''${pane_current_path}"
+ '';
+ };
+ };
+}