From 2c50398ea8ed5b3caa8f41145a909f6a2d60c295 Mon Sep 17 00:00:00 2001 From: iiogama Date: Sun, 14 Jan 2024 21:32:29 -0800 Subject: [PATCH] Successful nix-colors implementation. Merging into master branch. --- home-manager/base.nix | 83 ----------- home-manager/cli.nix | 19 ++- home-manager/dots/bash.nix | 80 +++++++++++ home-manager/dots/bash_login | 4 - home-manager/dots/bash_logout | 3 - home-manager/dots/bashrc | 134 ------------------ home-manager/dots/foot.nix | 2 +- home-manager/dots/foot/foot.ini | 23 --- home-manager/dots/mako.nix | 2 +- home-manager/dots/mako/config | 21 --- home-manager/dots/river.nix | 3 +- home-manager/dots/river/init | 156 --------------------- home-manager/dots/swappy/config | 5 - home-manager/dots/swaylock.nix | 6 +- home-manager/dots/swaylock/config | 28 ---- home-manager/dots/tmux.nix | 59 ++++++++ home-manager/dots/way-displays/cfg.yaml | 80 ----------- home-manager/dots/{ => xorg}/dunst/dunstrc | 0 home-manager/dots/{ => xorg}/sxhkd/sxhkdrc | 0 home-manager/dots/{ => xorg}/xinitrc | 0 home-manager/wayland.nix | 4 +- home-manager/xorg.nix | 6 +- 22 files changed, 167 insertions(+), 551 deletions(-) create mode 100644 home-manager/dots/bash.nix delete mode 100644 home-manager/dots/bash_login delete mode 100644 home-manager/dots/bash_logout delete mode 100644 home-manager/dots/bashrc delete mode 100644 home-manager/dots/foot/foot.ini delete mode 100644 home-manager/dots/mako/config delete mode 100755 home-manager/dots/river/init delete mode 100644 home-manager/dots/swappy/config delete mode 100644 home-manager/dots/swaylock/config create mode 100644 home-manager/dots/tmux.nix delete mode 100644 home-manager/dots/way-displays/cfg.yaml rename home-manager/dots/{ => xorg}/dunst/dunstrc (100%) rename home-manager/dots/{ => xorg}/sxhkd/sxhkdrc (100%) rename home-manager/dots/{ => xorg}/xinitrc (100%) diff --git a/home-manager/base.nix b/home-manager/base.nix index 68c5417..630ea53 100644 --- a/home-manager/base.nix +++ b/home-manager/base.nix @@ -14,20 +14,6 @@ dataHome = "${config.home.homeDirectory}/.local/share"; stateHome = "${config.home.homeDirectory}/.local/state"; }; - home.file = { - "bash_login" = { - source = ./dots/bash_login; - target = ".bash_login"; - }; - "bash_logout" = { - source = ./dots/bash_logout; - target = ".bash_logout"; - }; - "bashrc" = { - source = ./dots/bashrc; - target = ".bashrc"; - }; - }; programs.fzf = { enable = true; tmux.enableShellIntegration = true; @@ -51,21 +37,6 @@ defaultEditor = true; viAlias = true; vimAlias = true; - extraConfig = '' - syntax enable - set wrap - set spell spelllang=en_us - set linebreak - set number - set relativenumber - set splitbelow - set splitright - set tabstop=4 - set shiftwidth=4 - if filereadable(expand(".vim-project")) - source .vim-project - endif - ''; }; programs.password-store = { enable = true; @@ -86,60 +57,6 @@ newSession = false; prefix = "C-b"; terminal = "screen-256color"; - extraConfig = '' - # Do not rename windows automatically - set-option -g allow-rename off - - # Hide statusbar while using one window - set -g status off - set-hook -g after-new-window 'if "[ #{session_windows} -gt 1 ]" "set status on"' - set-hook -g after-kill-pane 'if "[ #{session_windows} -lt 2 ]" "set status off"' - set-hook -g pane-exited 'if "[ #{session_windows} -lt 2 ]" "set status off"' - set-hook -g window-layout-changed 'if "[ #{session_windows} -lt 2 ]" "set status off"' - - # Reload tmux.conf - unbind r - bind r source-file $HOME/.config/tmux/tmux.conf \; display "tmux config reloaded" - - # Rebind vertical/horizontal splitting - unbind % - unbind v - bind v split-window -h -c "#{pane_current_path}" - unbind '"' - unbind c - bind c split-window -v -c "#{pane_current_path}" - - unbind Enter - bind Enter new-window - unbind Tab - bind Tab last-window - - unbind l - # Rebind moving panes - bind -n C-h select-pane -L - bind -n C-j select-pane -D - bind -n C-k select-pane -U - bind -n C-l select-pane -R - bind -n M-h select-pane -L - bind -n M-j select-pane -D - bind -n M-k select-pane -U - bind -n M-l select-pane -R - - # Set status bar postition - set -g status-position top - - # Status bar theme - set -g status-style "fg=#50fa7b" - - # Window theme - setw -g window-status-current-style "bg=#50fa7b fg=#282a36" - setw -g window-status-current-format " #I:#W#F " - setw -g window-status-format "[#I:#W#F]" - ''; - plugins = with pkgs; [ - tmuxPlugins.urlview - tmuxPlugins.yank - ]; }; home.stateVersion = "23.05"; } diff --git a/home-manager/cli.nix b/home-manager/cli.nix index e44e9a7..6ec32c2 100644 --- a/home-manager/cli.nix +++ b/home-manager/cli.nix @@ -2,7 +2,10 @@ { config, lib, pkgs, inputs, user, ... }: { imports = [ + inputs.nix-colors.homeManagerModules.default ./base.nix + ./dots/tmux.nix + ./dots/bash.nix ]; home.shellAliases = { wget = "wget --hsts-file=${config.xdg.configHome}/wget-hsts"; @@ -51,10 +54,22 @@ }; neovim = { extraConfig = '' - let g:limelight_conceal_ctermfg = 'block' + syntax enable + set wrap + set spell spelllang=en_us + set linebreak + set number + set relativenumber + set splitbelow + set splitright + set tabstop=4 + set shiftwidth=4 + if filereadable(expand(".vim-project")) + source .vim-project + endif + let g:limelight_conceal_ctermfg = 'block' ''; plugins = with pkgs.vimPlugins; [ - dracula-nvim goyo-vim limelight-vim twilight-nvim diff --git a/home-manager/dots/bash.nix b/home-manager/dots/bash.nix new file mode 100644 index 0000000..9c8715d --- /dev/null +++ b/home-manager/dots/bash.nix @@ -0,0 +1,80 @@ +{ pkgs, config, ... }: +{ + home.file = { + ".bash_login" = { + enable = true; + text = '' + [[ -f ~/.bashrc ]] && . ~/.bashrc + if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then + exec river + fi + ''; + }; + ".bash_logout" = { + enable = true; + text = '' + if [ "$SHLVL" = 1 ]; then + [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q + fi + ''; + }; + ".bashrc" = { + enable = true; + text = '' + # Source global definitions + if [ -f /etc/bashrc ]; then + . /etc/bashrc + fi + set -o vi + unset HISTFILE + # Aliases + alias mkfoo='. $HOME/.local/bin/mkfoo.sh' + # Functions + function home() { + cd + clear + } + function search() { + surfraw $(surfraw -elvi | fzf | awk '{print $1;}') + } + function mkcd { + mkdir -p $1 + cd $1 + } + + # fe [FUZZY PATTERN] - Open the selected file with the default editor + # - Bypass fuzzy finder if there's only one match (--select-1) + # - Exit if there's no match (--exit-0) + function fe() { + IFS=' + ' + files=$(fzf --query="$1" --multi --select-1 --exit-0) + [ -n "$files" ] && "$EDITOR" "$files" + } + + # Environmental Variables + # Uncomment the following line if you don't like systemctl's auto-paging feature: + export SYSTEMD_PAGER= + export PS1='\n\u@\h:\w \j $?\n\$ ' + export BEMENU_OPTS="--tb '#03'\ + --tf '#${config.colorScheme.colors.base07}'\ + --fb '#${config.colorScheme.colors.base00}'\ + --ff '#${config.colorScheme.colors.base07}'\ + --nb '#${config.colorScheme.colors.base00}'\ + --nf '#${config.colorScheme.colors.base07}'\ + --hb '#${config.colorScheme.colors.base02}'\ + --hf '#${config.colorScheme.colors.base07}'\ + --sb '#${config.colorScheme.colors.base02}'\ + --sf '#${config.colorScheme.colors.base07}'\ + --scb '#${config.colorScheme.colors.base00}'\ + --scf '#${config.colorScheme.colors.base07}'\ + --fn 'Comic Mono 12'\ + --hp '10'\ + --binding 'vim'\ + --vim-esc-exits\ + --ignorecase\ + --no-overlap" + ''; + }; + }; +} diff --git a/home-manager/dots/bash_login b/home-manager/dots/bash_login deleted file mode 100644 index 99eac37..0000000 --- a/home-manager/dots/bash_login +++ /dev/null @@ -1,4 +0,0 @@ -[[ -f ~/.bashrc ]] && . ~/.bashrc -if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then - exec river -fi diff --git a/home-manager/dots/bash_logout b/home-manager/dots/bash_logout deleted file mode 100644 index 2a3f444..0000000 --- a/home-manager/dots/bash_logout +++ /dev/null @@ -1,3 +0,0 @@ -if [ "$SHLVL" = 1 ]; then - [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q -fi diff --git a/home-manager/dots/bashrc b/home-manager/dots/bashrc deleted file mode 100644 index 92f7721..0000000 --- a/home-manager/dots/bashrc +++ /dev/null @@ -1,134 +0,0 @@ -# .bashrc - -# Source global definitions -if [ -f /etc/bashrc ]; then - . /etc/bashrc -fi - -set -o vi -unset HISTFILE - -# Aliases -alias mkfoo='. $HOME/.local/bin/mkfoo.sh' - -# Functions -function home() { - cd - clear -} - -function search() { - surfraw $(surfraw -elvi | fzf | awk '{print $1;}') -} - -function mkcd { - mkdir -p $1 - cd $1 -} - -# fe [FUZZY PATTERN] - Open the selected file with the default editor -# - Bypass fuzzy finder if there's only one match (--select-1) -# - Exit if there's no match (--exit-0) -function fe() { - IFS=' -' - files=$(fzf --query="$1" --multi --select-1 --exit-0) - [ -n "$files" ] && ${EDITOR} "${files}" -} - -function _track() { - TRACK_DIR=${TRACK_DIR:-.} - local lis - lis=$(find "$TRACK_DIR"/*.csv -maxdepth 1 2>/dev/null | sed -e 's/.*\///' | sed -e 's/\..*$//') - local cur - cur=${COMP_WORDS[COMP_CWORD]} - COMPREPLY=( $(compgen -W "$lis" -- "$cur") ) -} - -function track() { - TRACK_DIR=${TRACK_DIR:-.} - if [ $# -eq 0 ]; then - find "$TRACK_DIR"/*.csv -maxdepth 1 2>/dev/null | sed -e 's/.*\///' | sed -e 's/\..*$//' - else - case "$1" in - -h|--help) - echo "track - track a thing" - echo " " - echo "usage: track # list things tracked" - echo "usage: track (-h or --help) # show this help" - echo "usage: track [thing] # show most recent value of thing" - echo "usage: track [thing] [value] # track new value of thing for today" - echo "usage: track [thing] [options]" - echo " options:" - echo " -a, --all # show all values of thing" - echo " -n, --number # show (number) values of thing" - echo " -d, --delete # delete thing tracking" - ;; - *) - local f - local fn - f="$TRACK_DIR"/"$1".csv - fn="$1" - shift - if [ $# -eq 0 ]; then - if [ ! -f "$f" ]; then - echo "track: '$fn' not found" - else - tail -n 1 "$f" | column -s, -t | awk '{printf "\033[38;05;226m%s-\033[38;05;226m%s-\033[38;05;226m%s\t\033[38;05;46m%s\t\n", $1, $2, $3, $4;}' - fi - else - if [ ! -f "$f" ]; then - echo "year,month,day,$fn" > "$f" - fi - case "$1" in - -a|--all) - column -s, -t "$f" | awk '{printf "\033[38;05;226m%s-\033[38;05;226m%s-\033[38;05;226m%s\t\033[38;05;46m%s\t\n", $1, $2, $3, $4;}' - ;; - -n|--number) - tail -n "$2" "$f" | column -s, -t | awk '{printf "\033[38;05;226m%s-\033[38;05;226m%s-\033[38;05;226m%s\t\033[38;05;46m%s\t\n", $1, $2, $3, $4;}' - ;; - -d|--delete) - rm "$f" - ;; - *) - local d - d=$(date '+%Y,%m,%d') - local l - l=$(sed -n "/$d/{=;}" "$f") - local c - c="${*//,/-}" - if [ -z "$l" ]; then - echo "$d,$c" >> "$f" - else - sed -i "$l c $d,$c" "$f" - fi - ;; - esac - fi - ;; - esac - fi -} -complete -F _track track - -# Environmental Variables -# Uncomment the following line if you don't like systemctl's auto-paging feature: -export SYSTEMD_PAGER= -export BEMENU_OPTS="--tb '#6272a4'\ - --tf '#f8f8f2'\ - --fb '#282a36'\ - --ff '#f8f8f2'\ - --nb '#282a36'\ - --nf '#6272a4'\ - --hb '#44475a'\ - --hf '#50fa7b'\ - --sb '#44475a'\ - --sf '#50fa7b'\ - --scb '#282a36'\ - --scf '#ff79c6'\ - --fn 'Comic Mono 12'\ - --hp '10'\ - --binding 'vim'\ - --vim-esc-exits\ - --ignorecase\ - --no-overlap" diff --git a/home-manager/dots/foot.nix b/home-manager/dots/foot.nix index 16b999f..2e327e3 100644 --- a/home-manager/dots/foot.nix +++ b/home-manager/dots/foot.nix @@ -8,7 +8,7 @@ }; colors = { alpha = 1.0; - foreground = "${config.colorScheme.colors.base0F}"; + foreground = "${config.colorScheme.colors.base07}"; background = "${config.colorScheme.colors.base00}"; regular0 = "${config.colorScheme.colors.base00}"; regular1 = "${config.colorScheme.colors.base01}"; diff --git a/home-manager/dots/foot/foot.ini b/home-manager/dots/foot/foot.ini deleted file mode 100644 index 9f00d68..0000000 --- a/home-manager/dots/foot/foot.ini +++ /dev/null @@ -1,23 +0,0 @@ -font=Comic Mono:size=11 -[colors] - alpha=1.0 - foreground=f8f8f2 - background=282a36 - ## Normal/regular colors (color palette 0-7) - regular0=000000 - regular1=ff5555 - regular2=50fa7b - regular3=f1fa8c - regular4=bd93f9 - regular5=ff79c6 - regular6=8be9fd - regular7=bfbfbf - ## Bright colors (color palette 8-15) - bright0=4d4d4d - bright1=ff6367 - bright2=5af78e - bright3=f4f99d - bright4=caa9fa - bright5=ff92d0 - bright6=9aedfe - bright7=e63636 diff --git a/home-manager/dots/mako.nix b/home-manager/dots/mako.nix index 4ac2a37..971303a 100644 --- a/home-manager/dots/mako.nix +++ b/home-manager/dots/mako.nix @@ -6,7 +6,7 @@ borderColor = "#${config.colorScheme.colors.base0E}"; borderRadius = 5; borderSize = 2; - textColor = "#${config.colorScheme.colors.base04}"; + textColor = "#${config.colorScheme.colors.base07}"; anchor = "top-right"; layer = "overlay"; maxVisible = 5; diff --git a/home-manager/dots/mako/config b/home-manager/dots/mako/config deleted file mode 100644 index b0de3c1..0000000 --- a/home-manager/dots/mako/config +++ /dev/null @@ -1,21 +0,0 @@ -max-history=10 -max-visible=5 -anchor=top-right -font=Comic Mono 12 -background-color=#282a36 -text-color=#50fa7b -border-color=#282a36 -default-timeout=10000 - -[urgency=low] -border-color=#282a36 -text-color=#6272a4 - -[urgency=normal] -border-color=#bd93f9 -text-color=#50fa7b - -[urgency=high] -background-color=#ff5555 -border-color=#ff5555 -text-color=#f8f8f2 diff --git a/home-manager/dots/river.nix b/home-manager/dots/river.nix index ece1c63..c5a88ee 100644 --- a/home-manager/dots/river.nix +++ b/home-manager/dots/river.nix @@ -16,8 +16,7 @@ # Autostart riverctl spawn "way-displays -c $HOME/.config/way-displays/cfg.yaml" - riverctl spawn "swww init" - riverctl spawn "swww img $HOME/Pictures/wallpapers/bliss-night.png --transition-type simple" + riverctl spawn "wallpaper.sh -r" riverctl spawn "wl-paste --type text --watch cliphist store" riverctl spawn "wl-paste --type image --watch cliphist store" riverctl spawn "mako" diff --git a/home-manager/dots/river/init b/home-manager/dots/river/init deleted file mode 100755 index 6555c4a..0000000 --- a/home-manager/dots/river/init +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/sh -# See the river(1), riverctl(1), and rivertile(1) man pages for complete -# documentation. - -# Variables -TERMINAL="foot" -LOCKSCREEN="swaylock" - -# Autostart -riverctl spawn "way-displays -c $HOME/.config/way-displays/cfg.yaml" -riverctl spawn "swww init" -riverctl spawn "swww img $HOME/Pictures/wallpapers/bliss-night.png --transition-type simple" -riverctl spawn "wl-paste --type text --watch cliphist store" -riverctl spawn "wl-paste --type image --watch cliphist store" -riverctl spawn "mako" -riverctl spawn "mullvad-gui" - -# Theme -riverctl background-color 0x282a36 -riverctl border-color-focused 0xbd93f9 -riverctl border-color-unfocused 0x282a36 - -# Launch Shortcuts -riverctl map normal Super Return spawn "$TERMINAL tmux.sh" -riverctl map normal Super+Shift Return spawn "$TERMINAL" -riverctl map normal Super Space spawn "wmenu.sh" - -# Focus Controls -riverctl map normal Super H send-layout-cmd rivertile "main-count +1" -riverctl map normal Super J focus-view next -riverctl map normal Super K focus-view previous -riverctl map normal Super L send-layout-cmd rivertile "main-count -1" -riverctl map normal Alt Tab focus-view next -riverctl map normal Alt+Shift Tab focus-view previous -riverctl map normal Super Tab focus-output next -riverctl map normal Super Bracketright focus-output next -riverctl map normal Super Bracketleft focus-output previous - -# Move Controls -riverctl map normal Super+Shift H zoom -riverctl map normal Super+Shift J swap next -riverctl map normal Super+Shift K swap previous -riverctl map normal Super+Shift L spawn $LOCKSCREEN -riverctl map normal Super+Shift Tab send-to-output next -riverctl map normal Super+Shift Bracketright send-to-output next -riverctl map normal Super+Shift Bracketleft send-to-output previous - -# Layout Controls -riverctl map normal Super+Alt H send-layout-cmd rivertile "main-ratio -0.05" -riverctl map normal Super+Alt L send-layout-cmd rivertile "main-ratio +0.05" -riverctl map normal Super I send-layout-cmd rivertile "main-count +1" -riverctl map normal Super D send-layout-cmd rivertile "main-count -1" -riverctl map normal Super Up send-layout-cmd rivertile "main-location top" -riverctl map normal Super Right send-layout-cmd rivertile "main-location right" -riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom" -riverctl map normal Super Left send-layout-cmd rivertile "main-location left" - -# Floating Controls -riverctl map normal Super F toggle-float -riverctl map normal Super+Control H move left 100 -riverctl map normal Super+Control J move down 100 -riverctl map normal Super+Control K move up 100 -riverctl map normal Super+Control L move right 100 -riverctl map normal Super+Shift+Control H snap left -riverctl map normal Super+Shift+Control J snap down -riverctl map normal Super+Shift+Control K snap up -riverctl map normal Super+Shift+Control L snap right -riverctl map normal Super+Alt+Shift H resize horizontal -100 -riverctl map normal Super+Alt+Shift J resize vertical 100 -riverctl map normal Super+Alt+Shift K resize vertical -100 -riverctl map normal Super+Alt+Shift L resize horizontal 100 -riverctl map-pointer normal Super BTN_LEFT move-view -riverctl map-pointer normal Super BTN_RIGHT resize-view - -# Close focused view -riverctl map normal Super W close -riverctl map normal Super Q close -# Exit River -riverctl map normal Super+Shift Q exit - -for i in $(seq 1 9) -do - tags=$((1 << ($i - 1))) - - # Super+[1-9] to focus tag [0-8] - riverctl map normal Super $i spawn "riverctl set-focused-tags $tags; notify-send 'Tag $tags focus toggle';" - - # Super+Shift+[1-9] to tag focused view with tag [0-8] - riverctl map normal Super+Shift $i spawn "riverctl set-view-tags $tags; riverctl set-focused-tags $tags; notify-send 'Tag $tags swap toggle';" - - # Super+Control+[1-9] to toggle focus of tag [0-8] - riverctl map normal Super+Control $i spawn "riverctl toggle-focused-tags $tags; notify-send 'Tag $tags focus toggle';" - - # Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view - riverctl map normal Super+Shift+Control $i spawn "riverctl toggle-view-tags $tags; notiy-send 'Tag $tags assignment toggle';" -done - -# Super+0 to focus all tags -# Super+Shift+0 to tag focused view with all tags -all_tags=$(((1 << 32) - 1)) -riverctl map normal Super 0 spawn "riverctl set-focused-tags $all_tags; notify-send 'All tags focus toggle';" -riverctl map normal Super+Shift 0 spawn "riverctl set-view-tags $all_tags; notify-send 'All tags assignment toggle';" - -# Toggle fullscreen -riverctl map normal None F11 toggle-fullscreen -riverctl map normal Super Z toggle-fullscreen - -# Declare a passthrough mode. This mode has only a single mapping to return to -# normal mode. This makes it useful for testing a nested wayland compositor -riverctl declare-mode passthrough - -# Super+F11 to enter passthrough mode -riverctl map normal Super F11 enter-mode passthrough - -# Super+F11 to return to normal mode -riverctl map passthrough Super F11 enter-mode normal - -# Various media key mapping examples for both normal and locked mode which do -# not have a modifier -for mode in normal locked -do - riverctl map $mode None XF86Eject spawn 'eject -T' - - # Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer) - riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5' - riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5' - riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute' - - # Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl) - riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause' - riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause' - riverctl map $mode None XF86AudioPrev spawn 'playerctl previous' - riverctl map $mode None XF86AudioNext spawn 'playerctl next' - - # Control screen backlight brightness with light (https://github.com/haikarainen/light) - riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 5' - riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 5' -done - -# Set keyboard repeat rate -riverctl set-repeat 50 300 - -# Make all views with an app-id that starts with "float" and title "foo" start floating. -riverctl rule-add -app-id 'float*' -title 'foo' float - -# Make all views with app-id "bar" and any title use client-side decorations -riverctl rule-add -app-id "bar" csd - -# Global Configuration Settings -riverctl default-layout rivertile -rivertile -view-padding 10 -outer-padding 10 & -riverctl attach-mode bottom -riverctl hide-cursor timeout 10000 -riverctl hide-cursor when-typing enabled -riverctl set-cursor-warp on-focus-change -riverctl focus-follows-cursor always diff --git a/home-manager/dots/swappy/config b/home-manager/dots/swappy/config deleted file mode 100644 index 5b39a7f..0000000 --- a/home-manager/dots/swappy/config +++ /dev/null @@ -1,5 +0,0 @@ -[Default] -save_dir=$HOME/Pictures/screenshots -line_size=5 -text_size=20 -text_font=Comic Mono diff --git a/home-manager/dots/swaylock.nix b/home-manager/dots/swaylock.nix index 9e7e632..7b11de6 100644 --- a/home-manager/dots/swaylock.nix +++ b/home-manager/dots/swaylock.nix @@ -7,9 +7,9 @@ inside-color = "${config.colorScheme.colors.base01}"; line-color = "${config.colorScheme.colors.base01}"; ring-color = "${config.colorScheme.colors.base09}"; - text-color = "${config.colorScheme.colors.base05}"; + text-color = "${config.colorScheme.colors.base07}"; layout-bg-color = "${config.colorScheme.colors.base01}"; - layout-text-color = "${config.colorScheme.colors.base05}"; + layout-text-color = "${config.colorScheme.colors.base07}"; inside-clear-color = "${config.colorScheme.colors.base04}"; line-clear-color = "${config.colorScheme.colors.base01}"; ring-clear-color = "${config.colorScheme.colors.base04}"; @@ -24,7 +24,7 @@ text-wrong-color = "${config.colorScheme.colors.base01}"; bs-hl-color = "${config.colorScheme.colors.base0B}"; key-hl-color = "${config.colorScheme.colors.base02}"; - text-caps-lock-color = "${config.colorScheme.colors.base05}"; + text-caps-lock-color = "${config.colorScheme.colors.base07}"; }; }; } diff --git a/home-manager/dots/swaylock/config b/home-manager/dots/swaylock/config deleted file mode 100644 index f9191b1..0000000 --- a/home-manager/dots/swaylock/config +++ /dev/null @@ -1,28 +0,0 @@ -color=282a36 -inside-color=1F202A -line-color=1F202A -ring-color=bd93f9 -text-color=f8f8f2 - -layout-bg-color=1F202A -layout-text-color=f8f8f2 - -inside-clear-color=6272a4 -line-clear-color=1F202A -ring-clear-color=6272a4 -text-clear-color=1F202A - -inside-ver-color=bd93f9 -line-ver-color=1F202A -ring-ver-color=bd93f9 -text-ver-color=1F202A - -inside-wrong-color=ff5555 -line-wrong-color=1F202A -ring-wrong-color=ff5555 -text-wrong-color=1F202A - -bs-hl-color=ff5555 -key-hl-color=50fa7b - -text-caps-lock-color=f8f8f2 diff --git a/home-manager/dots/tmux.nix b/home-manager/dots/tmux.nix new file mode 100644 index 0000000..053b262 --- /dev/null +++ b/home-manager/dots/tmux.nix @@ -0,0 +1,59 @@ +{ pkgs, config, ... }: +{ + programs.tmux = { + extraConfig = '' + # Do not rename windows automatically + set-option -g allow-rename off + + # Hide statusbar while using one window + set -g status off + set-hook -g after-new-window 'if "[ #{session_windows} -gt 1 ]" "set status on"' + set-hook -g after-kill-pane 'if "[ #{session_windows} -lt 2 ]" "set status off"' + set-hook -g pane-exited 'if "[ #{session_windows} -lt 2 ]" "set status off"' + set-hook -g window-layout-changed 'if "[ #{session_windows} -lt 2 ]" "set status off"' + + # Reload tmux.conf + unbind r + bind r source-file $HOME/.config/tmux/tmux.conf \; display "tmux config reloaded" + + # Rebind vertical/horizontal splitting + unbind % + unbind v + bind v split-window -h -c "#{pane_current_path}" + unbind '"' + unbind c + bind c split-window -v -c "#{pane_current_path}" + + unbind Enter + bind Enter new-window + unbind Tab + bind Tab last-window + + unbind l + # Rebind moving panes + bind -n C-h select-pane -L + bind -n C-j select-pane -D + bind -n C-k select-pane -U + bind -n C-l select-pane -R + bind -n M-h select-pane -L + bind -n M-j select-pane -D + bind -n M-k select-pane -U + bind -n M-l select-pane -R + + # Set status bar postition + set -g status-position top + + # Status bar theme + set -g status-style "fg=#${config.colorScheme.colors.base0D}" + + # Window theme + setw -g window-status-current-style "bg=#${config.colorScheme.colors.base0D} fg=#${config.colorScheme.colors.base00} + setw -g window-status-current-format " #I:#W#F " + setw -g window-status-format "[#I:#W#F]" + ''; + plugins = with pkgs; [ + tmuxPlugins.urlview + tmuxPlugins.yank + ]; + }; +} diff --git a/home-manager/dots/way-displays/cfg.yaml b/home-manager/dots/way-displays/cfg.yaml deleted file mode 100644 index b3f9707..0000000 --- a/home-manager/dots/way-displays/cfg.yaml +++ /dev/null @@ -1,80 +0,0 @@ -# Default cfg.yaml for way-displays. -# Copy this to ~/.config/way-displays/cfg.yaml and edit it to your liking. -# -# See https://github.com/alex-courtis/way-displays/blob/master/doc/CONFIGURATION.md - - -# Arrange displays in a ROW (default, left to right) or a COLUMN (top to bottom) -ARRANGE: ROW - -# Align ROWs at the TOP (default), MIDDLE or BOTTOM -# Align COLUMNs at the LEFT (default), MIDDLE or RIGHT -ALIGN: TOP - - -# The default ORDER is simply the order in which the displays are discovered. -# Define your own. -ORDER: - - 'DP-1' - - 'DP-2' - - -# Enable scaling, overrides AUTO_SCALE and SCALE -SCALING: TRUE - -# The default is to scale each display by DPI. -# This may be disabled and scale 1 will be used, unless a SCALE has been specified. -AUTO_SCALE: TRUE - - -# Auto scale may be overridden for each display. -SCALE: - #- NAME_DESC: 'monitor description' - # SCALE: 1.75 - -# Override the preferred mode. -# WARNING: this may result in an unusable display. See https://github.com/alex-courtis/way-displays#known-issues-with-workarounds -# for a possible workaround. -MODE: - # Resolution and refresh - #- NAME_DESC: HDMI-A-1 - # WIDTH: 1920 - # HEIGHT: 1080 - # HZ: 60 - - # Resolution with highest refresh - #- NAME_DESC: 'monitor description' - # WIDTH: 2560 - # HEIGHT: 1440 - - # Highest available - - NAME_DESC: DP-1 - MAX: TRUE - - NAME_DESC: DP-2 - MAX: TRUE - -# Rotate or translate the display. -# 90, 180, 270, FLIPPED, FLIPPED-90, FLIPPED-180, FLIPPED-270 -TRANSFORM: - # - NAME_DESC: 'monitor description' - # TRANSFORM: 270 - -# VRR / adaptive sync is enabled by default. Disable it per display. -VRR_OFF: - # - DP-2 - # - '!.*my monitor.*' - - -# Laptop displays usually start with eDP e.g. eDP-1. This may be overridden if -# your laptop is different. -#LAPTOP_DISPLAY_PREFIX: 'eDP' - - -# One of: ERROR, WARNING, INFO (default), DEBUG -LOG_THRESHOLD: INFO - - -# Disable the specified displays. -DISABLED: - #- "eDP-1" - diff --git a/home-manager/dots/dunst/dunstrc b/home-manager/dots/xorg/dunst/dunstrc similarity index 100% rename from home-manager/dots/dunst/dunstrc rename to home-manager/dots/xorg/dunst/dunstrc diff --git a/home-manager/dots/sxhkd/sxhkdrc b/home-manager/dots/xorg/sxhkd/sxhkdrc similarity index 100% rename from home-manager/dots/sxhkd/sxhkdrc rename to home-manager/dots/xorg/sxhkd/sxhkdrc diff --git a/home-manager/dots/xinitrc b/home-manager/dots/xorg/xinitrc similarity index 100% rename from home-manager/dots/xinitrc rename to home-manager/dots/xorg/xinitrc diff --git a/home-manager/wayland.nix b/home-manager/wayland.nix index 5e331e4..5331fa5 100644 --- a/home-manager/wayland.nix +++ b/home-manager/wayland.nix @@ -2,7 +2,6 @@ { config, lib, pkgs, inputs, user, ... }: { imports = [ - inputs.nix-colors.homeManagerModules.default inputs.gtk-nix.homeManagerModule ./gui.nix ./dots/foot.nix @@ -13,6 +12,7 @@ ./dots/swaylock.nix ./dots/way-displays.nix ]; - colorScheme = inputs.nix-colors.colorSchemes.nord; + # themes can be found here: https://github.com/tinted-theming/base16-schemes + colorScheme = inputs.nix-colors.colorSchemes.darcula; gtkNix.enable = true; } diff --git a/home-manager/xorg.nix b/home-manager/xorg.nix index 5931c8b..85b3462 100644 --- a/home-manager/xorg.nix +++ b/home-manager/xorg.nix @@ -33,7 +33,7 @@ }; home.file = { "xinitrc" = { - source = ./dots/xinitrc; + source = ./dots/xorg/xinitrc; target = ".xinitrc"; }; }; @@ -66,12 +66,12 @@ }; xdg.configFile = { "dunst" = { - source = ./dots/dunst; + source = ./dots/xorg/dunst; target = "dunst"; recursive = true; }; "sxhkd" = { - source = ./dots/sxhkd; + source = ./dots/xorg/sxhkd; target = "sxhkd"; recursive = true; executable = true;