aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--programs/alacritty.nix63
-rw-r--r--programs/atuin.nix20
-rw-r--r--programs/bash.nix16
-rw-r--r--programs/default.nix16
-rw-r--r--programs/fuzzel.nix42
-rw-r--r--programs/git.nix66
-rw-r--r--programs/init.vim3
-rw-r--r--programs/rofi.nix7
-rw-r--r--programs/st/config.h2
-rw-r--r--programs/tmux.nix11
10 files changed, 179 insertions, 67 deletions
diff --git a/programs/alacritty.nix b/programs/alacritty.nix
new file mode 100644
index 0000000..280c667
--- /dev/null
+++ b/programs/alacritty.nix
@@ -0,0 +1,63 @@
1{ config
2, pkgs
3, lib
4, theme
5, font
6, ...
7}:
8let
9
10 fontConfig = {
11 normal = { family = "${font.name}"; style = "Regular"; };
12 bold = { family = "${font.name}"; style = "Bold"; };
13 italic = { family = "${font.name}"; style = "Italic"; };
14 size = 10.0;
15 };
16in
17{
18 programs.alacritty = {
19 enable = true;
20 settings = {
21 env = {
22 TERM = "xterm-256color";
23 };
24 window = {
25 padding.x = 20;
26 padding.y = 20;
27 dynamic_padding = true;
28 decorations = "None";
29 };
30
31 font = fontConfig;
32
33 colors = {
34 primary = {
35 background = "${theme.base00}";
36 foreground = "${theme.base05}";
37 };
38 normal = {
39 black = "${theme.base00}";
40 red = "${theme.base08}";
41 green = "${theme.base0B}";
42 yellow = "${theme.base0A}";
43 blue = "${theme.base0D}";
44 magenta = "${theme.base0E}";
45 cyan = "${theme.base0C}";
46 white = "${theme.base05}";
47 };
48 bright = {
49 black = "${theme.base03}";
50 red = "${theme.base09}";
51 green = "${theme.base01}";
52 yellow = "${theme.base02}";
53 blue = "${theme.base04}";
54 magenta = "${theme.base06}";
55 cyan = "${theme.base0F}";
56 white = "${theme.base07}";
57 };
58 };
59
60 };
61 };
62}
63
diff --git a/programs/atuin.nix b/programs/atuin.nix
index 898e848..39e5d89 100644
--- a/programs/atuin.nix
+++ b/programs/atuin.nix
@@ -2,15 +2,19 @@
2 programs.atuin = { 2 programs.atuin = {
3 enable = true; 3 enable = true;
4 enableBashIntegration = true; 4 enableBashIntegration = true;
5 flags = [
6 "--disable-up-arrow"
7 ];
5 settings = { 8 settings = {
6 invert = true; 9 invert = true;
7 history_format = "{command}"; 10 history_format = "{command}";
8 theme.name = "minimal"; 11 theme.name = "minimal";
9 style = "compact"; 12 style = "compact";
10 inline_height = 15; 13 inline_height = 15;
11 prefers_reduced_motion = true; 14 prefers_reduced_motion = true;
12 show_help = false; 15 show_help = false;
13 show_tabs = false; 16 show_tabs = false;
17 enter_accept = true;
14 }; 18 };
15 }; 19 };
16} 20}
diff --git a/programs/bash.nix b/programs/bash.nix
index 7d3c25e..d4a52f2 100644
--- a/programs/bash.nix
+++ b/programs/bash.nix
@@ -53,27 +53,15 @@
53 ]; 53 ];
54 54
55 sessionVariables = { 55 sessionVariables = {
56 56 TERM = "alacritty";
57 PF_INFO = "ascii title os kernel uptime pkgs shell";
58 PF_SEP = " ";
59 PF_COL1 = 7;
60 PF_COL2 = 7;
61 PF_COL3 = 6;
62 PF_ALIGN = "9";
63 PF_ASCII = "nixos";
64
65 _JAVA_AWT_WM_NONREPARENTING = 1;
66
67 TERM = "xterm-256color-italic";
68 EDITOR = "nvim"; 57 EDITOR = "nvim";
69 MANPAGER = "nvim +Man!"; 58 MANPAGER = "nvim +Man!";
70 GPG_TTY = "\$(tty)"; 59 GPG_TTY = "\$(tty)";
71
72 }; 60 };
73 61
74 initExtra = '' 62 initExtra = ''
75 export PATH=$PATH:"$HOME/scripts" 63 export PATH=$PATH:"$HOME/scripts"
76 export PROMPT_COMMAND="tmux refresh-client -S > /dev/null"; 64 export PROMPT_COMMAND="tmux refresh-client -S &> /dev/null";
77 export PS1="\n\001\e[0;36m\002λ\001\e[0m\002 "; 65 export PS1="\n\001\e[0;36m\002λ\001\e[0m\002 ";
78 export PS2="> "; 66 export PS2="> ";
79 67
diff --git a/programs/default.nix b/programs/default.nix
index 32eaf18..b45f476 100644
--- a/programs/default.nix
+++ b/programs/default.nix
@@ -18,8 +18,10 @@
18 ./neovim.nix 18 ./neovim.nix
19 ./readline.nix 19 ./readline.nix
20 ./rofi.nix 20 ./rofi.nix
21 ./alacritty.nix
21 ./tmux.nix 22 ./tmux.nix
22 ./zathura.nix 23 ./zathura.nix
24 ./fuzzel.nix
23 ]; 25 ];
24 26
25 programs = { 27 programs = {
@@ -53,9 +55,17 @@
53 enable = true; 55 enable = true;
54 enableBashIntegration = true; 56 enableBashIntegration = true;
55 settings = { 57 settings = {
56 imports = [ 58 imports = [
57 "native-16.hjson" 59 "native-16.hjson"
58 ]; 60 ];
61 verbs = [
62 {
63 key = "enter";
64 working_dir = "{root}";
65 execution = ''$EDITOR +{line} {file}'';
66 leave_broot = false;
67 }
68 ];
59 }; 69 };
60 }; 70 };
61 }; 71 };
diff --git a/programs/fuzzel.nix b/programs/fuzzel.nix
new file mode 100644
index 0000000..8a87911
--- /dev/null
+++ b/programs/fuzzel.nix
@@ -0,0 +1,42 @@
1{ config
2, pkgs
3, theme
4, font
5, ...
6}:
7
8with theme;
9let
10 fuzzelColor = themeColor: (builtins.replaceStrings [ "#" ] [ "" ] themeColor) + "ff";
11in
12{
13 programs.fuzzel = {
14 enable = true;
15 settings = {
16 main = {
17 font = "${font.name}:size=12";
18 prompt = "";
19 anchor = "top-left";
20 icons-enabled = "no";
21 fields = "filename,exec,name,generic";
22 horizontal-pad = 12;
23 vertical-pad = 12;
24 };
25 colors = {
26 background = "${fuzzelColor theme.base00}";
27 text = "${fuzzelColor theme.base02}";
28 match = "${fuzzelColor theme.base0C}";
29 selection = "${fuzzelColor theme.base00}";
30 selection-text = "${fuzzelColor theme.base05}";
31 selection-match = "${fuzzelColor theme.base0C}";
32 border = "${fuzzelColor theme.base02}";
33 };
34 border = {
35 width = 2;
36 radius = 0;
37 };
38 };
39 };
40}
41
42
diff --git a/programs/git.nix b/programs/git.nix
index d4fac67..9901d2d 100644
--- a/programs/git.nix
+++ b/programs/git.nix
@@ -12,39 +12,39 @@ with theme;
12 userEmail = "[email protected]"; 12 userEmail = "[email protected]";
13 userName = "Akshay"; 13 userName = "Akshay";
14 lfs.enable = true; 14 lfs.enable = true;
15 delta = { 15 # delta = {
16 enable = true; 16 # enable = true;
17 options = { 17 # options = {
18 features = "decorations labels"; 18 # features = "decorations labels";
19 syntax-theme = "none"; 19 # syntax-theme = "none";
20 zero-style = "8"; 20 # zero-style = "8";
21 navigate = "true"; 21 # navigate = "true";
22 line-numbers = "true"; 22 # line-numbers = "true";
23 keep-plus-minus-markers = "true"; 23 # keep-plus-minus-markers = "true";
24 line-numbers-zero-style = "8"; 24 # line-numbers-zero-style = "8";
25 line-numbers-left-style = "8"; 25 # line-numbers-left-style = "8";
26 line-numbers-right-style = "8"; 26 # line-numbers-right-style = "8";
27 line-numbers-minus-style = "${base08}"; 27 # line-numbers-minus-style = "${base08}";
28 line-numbers-plus-style = "${base0B}"; 28 # line-numbers-plus-style = "${base0B}";
29 decorations = { 29 # # decorations = {
30 file-decoration-style = "none"; 30 # # file-decoration-style = "none";
31 whitespace-error-style = "22 reverse"; 31 # # whitespace-error-style = "22 reverse";
32 minus-style = "${base08}"; 32 # # minus-style = "${base08}";
33 minus-emph-style = "${base08} bold"; 33 # # minus-emph-style = "${base08} bold";
34 plus-style = "${base0B}"; 34 # # plus-style = "${base0B}";
35 plus-emph-style = "${base0B} bold"; 35 # # plus-emph-style = "${base0B} bold";
36 file-style = "7 bold"; 36 # # file-style = "7 bold";
37 hunk-header-style = "7"; 37 # # hunk-header-style = "7";
38 hunk-header-decoration-style = "8 ul"; 38 # # hunk-header-decoration-style = "8 ul";
39 }; 39 # # };
40 labels = { 40 # labels = {
41 file-modified-label = " MODIFIED "; 41 # file-modified-label = " MODIFIED ";
42 file-removed-label = " REMOVED "; 42 # file-removed-label = " REMOVED ";
43 file-added-label = " ADDED "; 43 # file-added-label = " ADDED ";
44 file-renamed-label = " RENAMED "; 44 # file-renamed-label = " RENAMED ";
45 }; 45 # };
46 }; 46 # };
47 }; 47 # };
48 aliases = { 48 aliases = {
49 co = "checkout"; 49 co = "checkout";
50 rb = "rebase"; 50 rb = "rebase";
diff --git a/programs/init.vim b/programs/init.vim
index af74f32..3dbd4b5 100644
--- a/programs/init.vim
+++ b/programs/init.vim
@@ -56,6 +56,7 @@ set dir=/tmp
56syntax on 56syntax on
57 57
58set nocursorline 58set nocursorline
59set notermguicolors
59set omnifunc=syntaxcomplete#Complete 60set omnifunc=syntaxcomplete#Complete
60set completefunc=LanguageClient#complete 61set completefunc=LanguageClient#complete
61set list 62set list
@@ -159,7 +160,7 @@ highlight GitGutterAdd ctermfg=8
159highlight GitGutterChange ctermfg=8 160highlight GitGutterChange ctermfg=8
160highlight GitGutterDelete ctermfg=8 161highlight GitGutterDelete ctermfg=8
161 162
162let g:rustfmt_autosave = 1 163let g:rustfmt_autosave = 0
163 164
164let g:latex_view_general_viewer = "zathura" 165let g:latex_view_general_viewer = "zathura"
165let g:vimtex_view_method = "zathura" 166let g:vimtex_view_method = "zathura"
diff --git a/programs/rofi.nix b/programs/rofi.nix
index 8ce77bf..c140f63 100644
--- a/programs/rofi.nix
+++ b/programs/rofi.nix
@@ -53,8 +53,9 @@ let
53in 53in
54{ 54{
55 programs.rofi = { 55 programs.rofi = {
56 package = pkgs.rofi-wayland;
56 enable = true; 57 enable = true;
57 font = "${font.name} 21"; 58 font = "${font.name} 12";
58 location = "top-left"; 59 location = "top-left";
59 xoffset = 20; 60 xoffset = 20;
60 yoffset = 20; 61 yoffset = 20;
@@ -65,8 +66,8 @@ in
65 combi-modes = mkLiteral "[ window, run ]"; 66 combi-modes = mkLiteral "[ window, run ]";
66 # window = mkLiteral ''{ display-name: "[w]"; }''; 67 # window = mkLiteral ''{ display-name: "[w]"; }'';
67 # run = mkLiteral ''{ display-name: "[r]"; }''; 68 # run = mkLiteral ''{ display-name: "[r]"; }'';
68 kb-clear-line = "Control+c"; 69 # kb-clear-line = "Control+u";
69 kb-remove-word-back = "Control+w"; 70 # kb-remove-word-back = "Control+w";
70 }; 71 };
71 }; 72 };
72} 73}
diff --git a/programs/st/config.h b/programs/st/config.h
index c9fca58..e7f79e3 100644
--- a/programs/st/config.h
+++ b/programs/st/config.h
@@ -27,7 +27,7 @@ char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
27char *vtiden = "\033[?6c"; 27char *vtiden = "\033[?6c";
28 28
29/* Kerning / character bounding-box multipliers */ 29/* Kerning / character bounding-box multipliers */
30static float cwscale = 0.9; 30static float cwscale = 1.0;
31static float chscale = 1.0; 31static float chscale = 1.0;
32 32
33/* 33/*
diff --git a/programs/tmux.nix b/programs/tmux.nix
index c8745c7..bfda915 100644
--- a/programs/tmux.nix
+++ b/programs/tmux.nix
@@ -28,12 +28,15 @@ let
28 date-bst = date-tz "Europe/London"; 28 date-bst = date-tz "Europe/London";
29 date-hel = date-tz "Europe/Helsinki"; 29 date-hel = date-tz "Europe/Helsinki";
30 30
31 copy = "${pkgs.wl-clipboard-rs}/bin/wl-copy";
32 paste = "${pkgs.wl-clipboard-rs}/bin/wl-paste";
33
31 # plugins 34 # plugins
32 thumbs = { 35 thumbs = {
33 plugin = pkgs.tmuxPlugins.tmux-thumbs; 36 plugin = pkgs.tmuxPlugins.tmux-thumbs;
34 extraConfig = '' 37 extraConfig = ''
35 set -g @thumbs-key F 38 set -g @thumbs-key F
36 set -g @thumbs-command 'echo -n {} | xclip -i -sel p -f | xclip -i -sel c' 39 set -g @thumbs-command 'echo -n {} | ${copy}'
37 set -g @thumbs-fg-color white 40 set -g @thumbs-fg-color white
38 set -g @thumbs-hint-bg-color yellow 41 set -g @thumbs-hint-bg-color yellow
39 set -g @thumbs-hint-fg-color black 42 set -g @thumbs-hint-fg-color black
@@ -65,7 +68,7 @@ in
65 plugins = [ thumbs ]; 68 plugins = [ thumbs ];
66 prefix = "C-t"; 69 prefix = "C-t";
67 keyMode = "vi"; 70 keyMode = "vi";
68 terminal = "xterm-256color-italic"; 71 terminal = "alacritty";
69 extraConfig = '' 72 extraConfig = ''
70 bind r source-file ~/.config/tmux/tmux.conf 73 bind r source-file ~/.config/tmux/tmux.conf
71 74
@@ -112,9 +115,9 @@ in
112 bind-key -r ">" swap-window -d -t +1 115 bind-key -r ">" swap-window -d -t +1
113 116
114 bind-key -T copy-mode-vi v send-keys -X begin-selection 117 bind-key -T copy-mode-vi v send-keys -X begin-selection
115 bind-key -T copy-mode-vi y send-keys -X copy-pipe "xclip -i -sel p -f | xclip -i -sel c " 118 bind-key -T copy-mode-vi y send-keys -X copy-pipe "${copy}"
116 bind-key -T copy-mode-vi r send-keys -X rectangle-toggle 119 bind-key -T copy-mode-vi r send-keys -X rectangle-toggle
117 bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-no-clear "xclip -i -sel p -f | xclip -i -sel c " 120 bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-no-clear "${copy}"
118 bind P paste-buffer 121 bind P paste-buffer
119 122
120 set-window-option -g allow-rename off 123 set-window-option -g allow-rename off