commit f3d19252313c6720c185b33392b1e9278541b1da
parent d58963570544b0921a3e6aa09203e99b36d952bf
Author: vin <vin@vineetk.net>
Date: Wed, 8 Jan 2025 19:40:53 +0000
update home.nix
Diffstat:
| M | home.nix | | | 190 | +++++++++++++++++++++++++++++++++++++++---------------------------------------- |
1 file changed, 93 insertions(+), 97 deletions(-)
diff --git a/home.nix b/home.nix
@@ -27,6 +27,7 @@
transmission_4
tree
xdotool
+ xwallpaper
];
preferXdgDirectories = true;
@@ -39,7 +40,7 @@
sessionVariables = {
EDITOR = "emacs";
VISUAL = "emacs -nw"
- PAGER = "less";
+ PAGER = "less";
LESS = "-iR";
LESSHISTFILE = "/dev/null";
BROWSER = "qutebrowser";
@@ -76,11 +77,16 @@
rsync = "rsync --no-inc-recursive";
mpv = "mpv --save-position-on-quit";
wget = "wget --no-hsts";
+
+ # the `-c $SHELL` is there because it defaults to bash even if
+ # that's not my user shell
+ nd = "nix develop -c $SHELL";
+ nr = "nix run";
+ ns = "nix search";
+ nsh = "nix shell";
};
};
- programs.home-manager.enable = true;
-
fonts.fontconfig = {
enable = true;
defaultFonts = {
@@ -97,10 +103,12 @@
iconTheme.name = "rose-pine";
iconTheme.package = pkgs.rose-pine-icon-theme;
theme.name = "Everblush";
- #theme.package = inputs.everblush-gtk.packages.x86_64-linux.default;
+ theme.package = inputs.everblush-gtk.packages.x86_64-linux.default;
};
programs = {
+ home-manager.enable = true;
+
aerc = {
enable = true;
extraAccounts = {
@@ -314,11 +322,10 @@
services = {
# batsignal
- # borgmatic
- # dunst?
+ # borgmatic
+ # dunst?
# glance?
# gpg-agent with ssh?
- # mbsync?
# mpd and ncmpcpp?
# nextcloud-client?
# pass-secret-service?
@@ -327,7 +334,6 @@
# remmina?
# screen-locker
# sxhkd if using bspwm and not i3
- # syncthing?
# unison
# vdirsyncer
@@ -342,7 +348,7 @@
redshift = {
enable = true;
dawnTime = "07:00";
- duskTime = "21:00";
+ duskTime = "22:00";
temperature.day = 6500;
temperature.night = 4500;
};
@@ -350,23 +356,13 @@
xdg = {
enable = true;
- desktopEntries = {
- xlinks = {
- name = "Graphical Links 2";
- genericName = "Web Browser";
- exec = "links -g %U";
- terminal = false;
- categories = [ "Application" "Network" "WebBrowser" ];
- mimeType = [ "application/xhtml+xml" "text/html" "text/xml" ];
- };
- };
mimeApps = {
enable = true;
defaultApplications = {
"application/pdf" = [ "mupdf.desktop" ];
- "application/xhtml+xml" = [ "links.desktop" "librewolf.desktop" ];
- "text/html" = [ "links.desktop" "librewolf.desktop" ];
- "text/xml" = [ "links.desktop" "librewolf.desktop" ];
+ "application/xhtml+xml" = [ "qutebrowser.desktop" "librewolf.desktop" ];
+ "text/html" = [ "qutebrowser.desktop" "librewolf.desktop" ];
+ "text/xml" = [ "qutebrowser.desktop" "librewolf.desktop" ];
};
};
userDirs = {
@@ -441,86 +437,86 @@
size = 11.0;
};
keybindings =
- let
- left = "n";
- down = "e";
- up = "o";
- right = "i";
- modifier = config.xsession.windowManager.i3.config.modifier;
- menu = config.xsession.windowManager.i3.config.menu;
- terminal = config.xsession.windowManager.i3.config.terminal;
- warpmouse = "exec eval $(xdotool getwindowfocus getwindowgeometry --shell) && xdotool mousemove --window $(xdotool getwindowfocus) $((WIDTH/2)) $((HEIGHT/2))";
- in lib.mkOptionDefault {
- "${modifier}+Return" = "exec ${terminal}";
- "${modifier}+p" = "exec ${menu}";
- "${modifier}+b" = "exec bm t";
- "${modifier}+Shift+b" = "exec angoumenu";
-
- "${modifier}+Shift+q" = "kill";
- "${modifier}+Shift+c" = "reload";
- "Mod1+Mod4+Ctrl+Shift+e" = "exit";
-
- "${modifier}+${left}" = "focus left; ${warpmouse}";
- "${modifier}+${down}" = "focus down; ${warpmouse}";
- "${modifier}+${up}" = "focus up; ${warpmouse}";
- "${modifier}+${right}" = "focus right; ${warpmouse}";
- "${modifier}+Shift+${left}" = "move left";
- "${modifier}+Shift+${down}" = "move down";
- "${modifier}+Shift+${up}" = "move up";
- "${modifier}+Shift+${right}" = "move right";
-
- # TODO do this programatically
- "${modifier}+1" = "workspace number 1";
- "${modifier}+2" = "workspace number 2";
- "${modifier}+3" = "workspace number 3";
- "${modifier}+4" = "workspace number 4";
- "${modifier}+5" = "workspace number 5";
- "${modifier}+6" = "workspace number 6";
- "${modifier}+7" = "workspace number 7";
- "${modifier}+8" = "workspace number 8";
- "${modifier}+9" = "workspace number 9";
- "${modifier}+0" = "workspace number 0";
- "${modifier}+Shift+1" = "move container to workspace number 1";
- "${modifier}+Shift+2" = "move container to workspace number 2";
- "${modifier}+Shift+3" = "move container to workspace number 3";
- "${modifier}+Shift+4" = "move container to workspace number 4";
- "${modifier}+Shift+5" = "move container to workspace number 5";
- "${modifier}+Shift+6" = "move container to workspace number 6";
- "${modifier}+Shift+7" = "move container to workspace number 7";
- "${modifier}+Shift+8" = "move container to workspace number 8";
- "${modifier}+Shift+9" = "move container to workspace number 9";
- "${modifier}+Shift+0" = "move container to workspace number 0";
-
- "${modifier}+Ctrl+Shift+b" = "splith";
- "${modifier}+Ctrl+Shift+v" = "splitv";
- "${modifier}+s" = "layout stacking";
- "${modifier}+t" = "layout tabbed";
- "${modifier}+Shift+t" = "layout toggle split";
- "${modifier}+Shift+f" = "fullscreen";
- "${modifier}+Shift+space" = "floating toggle";
- "${modifier}+space" = "focus mode_toggle";
- "${modifier}+a" = "focus parent";
-
- "${modifier}+r" = "mode resize";
- };
+ let
+ left = "n";
+ down = "e";
+ up = "o";
+ right = "i";
+ modifier = config.xsession.windowManager.i3.config.modifier;
+ menu = config.xsession.windowManager.i3.config.menu;
+ terminal = config.xsession.windowManager.i3.config.terminal;
+ warpmouse = "exec eval $(xdotool getwindowfocus getwindowgeometry --shell) && xdotool mousemove --window $(xdotool getwindowfocus) $((WIDTH/2)) $((HEIGHT/2))";
+ in lib.mkOptionDefault {
+ "${modifier}+Return" = "exec ${terminal}";
+ "${modifier}+p" = "exec ${menu}";
+ "${modifier}+b" = "exec bm t";
+ "${modifier}+Shift+b" = "exec angoumenu";
+
+ "${modifier}+Shift+q" = "kill";
+ "${modifier}+Shift+c" = "reload";
+ "Mod1+Mod4+Ctrl+Shift+e" = "exit";
+
+ "${modifier}+${left}" = "focus left; ${warpmouse}";
+ "${modifier}+${down}" = "focus down; ${warpmouse}";
+ "${modifier}+${up}" = "focus up; ${warpmouse}";
+ "${modifier}+${right}" = "focus right; ${warpmouse}";
+ "${modifier}+Shift+${left}" = "move left";
+ "${modifier}+Shift+${down}" = "move down";
+ "${modifier}+Shift+${up}" = "move up";
+ "${modifier}+Shift+${right}" = "move right";
+
+ # TODO do this programatically
+ "${modifier}+1" = "workspace number 1";
+ "${modifier}+2" = "workspace number 2";
+ "${modifier}+3" = "workspace number 3";
+ "${modifier}+4" = "workspace number 4";
+ "${modifier}+5" = "workspace number 5";
+ "${modifier}+6" = "workspace number 6";
+ "${modifier}+7" = "workspace number 7";
+ "${modifier}+8" = "workspace number 8";
+ "${modifier}+9" = "workspace number 9";
+ "${modifier}+0" = "workspace number 0";
+ "${modifier}+Shift+1" = "move container to workspace number 1";
+ "${modifier}+Shift+2" = "move container to workspace number 2";
+ "${modifier}+Shift+3" = "move container to workspace number 3";
+ "${modifier}+Shift+4" = "move container to workspace number 4";
+ "${modifier}+Shift+5" = "move container to workspace number 5";
+ "${modifier}+Shift+6" = "move container to workspace number 6";
+ "${modifier}+Shift+7" = "move container to workspace number 7";
+ "${modifier}+Shift+8" = "move container to workspace number 8";
+ "${modifier}+Shift+9" = "move container to workspace number 9";
+ "${modifier}+Shift+0" = "move container to workspace number 0";
+
+ "${modifier}+Ctrl+Shift+b" = "splith";
+ "${modifier}+Ctrl+Shift+v" = "splitv";
+ "${modifier}+s" = "layout stacking";
+ "${modifier}+t" = "layout tabbed";
+ "${modifier}+Shift+t" = "layout toggle split";
+ "${modifier}+Shift+f" = "fullscreen";
+ "${modifier}+Shift+space" = "floating toggle";
+ "${modifier}+space" = "focus mode_toggle";
+ "${modifier}+a" = "focus parent";
+
+ "${modifier}+r" = "mode resize";
+ };
menu = "dmenu_run";
modes.resize =
- let
- left = "n";
- down = "e";
- up = "o";
- right = "i";
- in lib.mkOptionDefault {
- ${left} = "resize shrink width 10px";
- ${down} = "resize grow height 10px";
- ${up} = "resize shrink width 10px";
- ${right} = "resize grow width 10px";
- Escape = "mode default";
- };
+ let
+ left = "n";
+ down = "e";
+ up = "o";
+ right = "i";
+ in lib.mkOptionDefault {
+ ${left} = "resize shrink width 10px";
+ ${down} = "resize grow height 10px";
+ ${up} = "resize shrink width 10px";
+ ${right} = "resize grow width 10px";
+ Escape = "mode default";
+ };
modifier = "Mod4";
startup = [
{ command = "picom"; always = true; notification = false; }
- { command = "hsetroot -cover pics/wp/zvezdy-kosmos-korabl-art-fantastika-battleship-dmitrii-ustin_ultrawide.jpg >/dev/null"; notification = false; }
+ { command = "xwallpaper --center pics/wp/wallhaven-0w92lp.jpg"; notification = false; }
];
terminal = "alacritty";
window = {