diff --git a/.Xresources-manjaro b/.Xresources-manjaro new file mode 100644 index 0000000..1c00b48 --- /dev/null +++ b/.Xresources-manjaro @@ -0,0 +1,111 @@ +!! Xft.dpi: 96 +Xft.dpi: 144 +Xft.antialias: true +Xft.hinting: true +Xft.rgba: rgb +Xft.autohint: false +Xft.hintstyle: hintslight +Xft.lcdfilter: lcddefault + +XTerm*background: #222D31 +XTerm*foreground: #d8d8d8 +XTerm*pointerColor: #1ABB9B +XTerm*faceName: Fixed +XTerm*faceSize: 11 +XTerm*reverseVideo: on +XTerm*selectToClipboard: true + +*background: #222D31 +*foreground: #d8d8d8 +*fading: 8 +*fadeColor: black +*cursorColor: #1ABB9B +*pointerColorBackground: #2B2C2B +*pointerColorForeground: #16A085 + +!! black dark/light +*color0: #222D31 +*color8: #585858 + +!! red dark/light +*color1: #ab4642 +*color9: #ab4642 + +!! green dark/light +*color2: #7E807E +*color10: #8D8F8D + +!! yellow dark/light +*color3: #f7ca88 +*color11: #f7ca88 + +!! blue dark/light +*color4: #7cafc2 +*color12: #7cafc2 + +!! magenta dark/light +*color5: #ba8baf +*color13: #ba8baf + +!! cyan dark/light +*color6: #1ABB9B +*color14: #1ABB9B + +!! white dark/light +*color7: #d8d8d8 +*color15: #f8f8f8 + +Xcursor.theme: xcursor-breeze +Xcursor.size: 0 + +URxvt.font: 9x15,xft:TerminessTTFNerdFontMono + +! alternative font settings with 'terminus': +! URxvt.font: -xos4-terminus-medium-r-normal--16-160-72-72-c-80-iso10646-1 +! URxvt.bold.font: -xos4-terminus-bold-r-normal--16-160-72-72-c-80-iso10646-1 +!! terminus names see end of file! + +URxvt.depth: 32 +URxvt.background: [100]#222D31 +URxvt*scrollBar: false +URxvt*mouseWheelScrollPage: false +URxvt*cursorBlink: true +URxvt*background: black +URxvt*foreground: grey +URxvt*saveLines: 5000 + +! for 'fake' transparency (without Compton) uncomment the following three lines +! URxvt*inheritPixmap: true +! URxvt*transparent: true +! URxvt*shading: 138 + +! Normal copy-paste keybindings without perls +URxvt.iso14755: false +URxvt.keysym.Shift-Control-V: eval:paste_clipboard +URxvt.keysym.Shift-Control-C: eval:selection_to_clipboard +!Xterm escape codes, word by word movement +URxvt.keysym.Control-Left: \033[1;5D +URxvt.keysym.Shift-Control-Left: \033[1;6D +URxvt.keysym.Control-Right: \033[1;5C +URxvt.keysym.Shift-Control-Right: \033[1;6C +URxvt.keysym.Control-Up: \033[1;5A +URxvt.keysym.Shift-Control-Up: \033[1;6A +URxvt.keysym.Control-Down: \033[1;5B +URxvt.keysym.Shift-Control-Down: \033[1;6B + +! The Terminus font uses the following X-names: +! -xos4-terminus-medium-r-normal--12-120-72-72-c-60-iso10646-1 +! -xos4-terminus-medium-r-normal--14-140-72-72-c-80-iso10646-1 +! -xos4-terminus-medium-r-normal--16-160-72-72-c-80-iso10646-1 +! -xos4-terminus-medium-r-normal--20-200-72-72-c-100-iso10646-1 +! -xos4-terminus-medium-r-normal--22-220-72-72-c-110-iso10646-1 +! -xos4-terminus-medium-r-normal--24-240-72-72-c-120-iso10646-1 +! -xos4-terminus-medium-r-normal--28-280-72-72-c-140-iso10646-1 +! -xos4-terminus-medium-r-normal--32-320-72-72-c-160-iso10646-1 +! -xos4-terminus-bold-r-normal--12-120-72-72-c-60-iso10646-1 +! -xos4-terminus-bold-r-normal--14-140-72-72-c-80-iso10646-1 +! -xos4-terminus-bold-r-normal--16-160-72-72-c-80-iso10646-1 +! -xos4-terminus-bold-r-normal--20-200-72-72-c-100-iso10646-1 +! -xos4-terminus-bold-r-normal--24-240-72-72-c-120-iso10646-1 +! -xos4-terminus-bold-r-normal--28-280-72-72-c-140-iso10646-1 +! -xos4-terminus-bold-r-normal--32-320-72-72-c-160-iso10646-1 diff --git a/.bash_profile b/.bash_profile index 9973398..b447908 100644 --- a/.bash_profile +++ b/.bash_profile @@ -5,9 +5,9 @@ [[ -f ~/.bashrc ]] && . ~/.bashrc # autostart systemd default session on tty1 -if [[ "$(tty)" == '/dev/tty1' ]]; then - exec startx -fi +#if [[ "$(tty)" == '/dev/tty1' ]]; then +# exec startx +#fi export PATH="$PATH:$HOME/.cargo/bin" diff --git a/.bashrc b/.bashrc index 7c69991..d57bcfd 100644 --- a/.bashrc +++ b/.bashrc @@ -35,7 +35,7 @@ esac PATH="/usr/bin:/usr/local/bin:/bin:/usr/sbin:/usr/local/sbin:/sbin" # base PATH="$PATH:/var/lib/snapd/snap/bin" # snapd PATH="$PATH:/usr/local/games:/usr/games" # base -if [ "$hostname" = "foundryside" ]; then +if [ "$hostname" = "shorefall" ]; then PATH="$PATH:$HOME/bin" # my own secret sauce PATH="$PATH:$HOME/bin/jdk-11.0.10+9/bin" # JavaTM PATH="$PATH:$HOME/bin/android-studio/bin" # Android Studio @@ -107,6 +107,21 @@ find-string() { fi } +# img_loop_here: $1 = seconds until next photo displayed +# BUG: currently, after running this function, the user needs to manually run +# 'reset' to unscrew the terminal +img_loop_here() { + if [ "$1" = "" ]; then + echo "Usage: img_loop_here [seconds until next photo displayed]" + else + while true; do + for g in $(ls .); do + timeout "$1" chafa -c full "$g" + done + done + fi +} + # Note to self: alias substitution is recursive AS LONG AS each expanded alias # ends in a space character (allowing for multiple aliases to be used on one # line). This is a POSIX specification. You do not know how long it took me to diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml index 11ea79c..6d49d14 100644 --- a/.config/alacritty/alacritty.yml +++ b/.config/alacritty/alacritty.yml @@ -120,7 +120,7 @@ font: #style: Italic # Point size - size: 8.0 + size: 8 # Offset is the extra space around each character. `offset.y` can be thought of # as modifying the line spacing, and `offset.x` as modifying the letter spacing. diff --git a/.config/i3/config b/.config/i3/config index 6c52412..e982ede 100644 --- a/.config/i3/config +++ b/.config/i3/config @@ -216,7 +216,7 @@ bindsym $mod+g gaps inner all toggle 20 # If inactivity after '-time' minutes, execute '-locker' string as a command # note: I'm still not sure if this line does anything. I think you might # just have to run the command by itself one in the shell. -exec xautolock -detectsleep -noclose -time 12 -locker "$HOME/.config/i3/screenlocker.sh" +#exec xautolock -detectsleep -noclose -time 12 -locker "$HOME/.config/i3/screenlocker.sh" # locks the screen after pressing Mod+Q (Windows + Q in my setup) bindsym $mod+q exec "$HOME/.config/i3/screenlocker.sh" @@ -226,9 +226,11 @@ bindsym $mod+q exec "$HOME/.config/i3/screenlocker.sh" ####################################### # 'desktop' background changed below -exec_always feh --bg-fill "$HOME/Library/Images/Wallpapers/rainbow/stripes/minimal-rainbow-wallpaper.jpg" +# TODO: maybe replace with variable if posssible +exec_always feh --bg-fill "$HOME/Library/Images/Wallpapers/archer/archer-mallorys-office3.jpg" # runs compositor, needed for effects, (really for st transparency) -exec --no-startup-id compton -b --config ~/.config/compton/compton.conf +#exec --no-startup-id compton -b --config ~/.config/compton/compton.conf +## TODO replace ##################################################### # set ThinkPad X1 Yoga volume/brightness controls # @@ -237,16 +239,18 @@ exec --no-startup-id compton -b --config ~/.config/compton/compton.conf bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle -bindsym XF86MonBrightnessUp exec "$HOME/.config/i3/brightness.sh inc" -bindsym XF86MonBrightnessDown exec "$HOME/.config/i3/brightness.sh dec" + +# Screen brightness controls +bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'" +bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'" ############################# # start KDEConnect daemon # ############################# -exec /usr/lib/kdeconnectd - +#exec /usr/lib/kdeconnectd +# TODO change ######################## # moar to be done... # diff --git a/.config/i3/config-manjaro-default b/.config/i3/config-manjaro-default new file mode 100644 index 0000000..bdc4e36 --- /dev/null +++ b/.config/i3/config-manjaro-default @@ -0,0 +1,418 @@ +# i3 config file (v4) +# Please see http://i3wm.org/docs/userguide.html for a complete reference! + +# Set mod key (Mod1=, Mod4=) +set $mod Mod4 + +# set default desktop layout (default is tiling) +# workspace_layout tabbed + +# Configure border style +default_border pixel 1 +default_floating_border normal + +# Hide borders +hide_edge_borders none + +# change borders +bindsym $mod+u border none +bindsym $mod+y border pixel 1 +bindsym $mod+n border normal + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +font xft:URWGothic-Book 11 + +# Use Mouse+$mod to drag floating windows +floating_modifier $mod + +# start a terminal +bindsym $mod+Return exec terminal + +# kill focused window +bindsym $mod+Shift+q kill + +# start program launcher +bindsym $mod+d exec --no-startup-id dmenu_recency + +# launch categorized menu +bindsym $mod+z exec --no-startup-id morc_menu + +################################################################################################ +## sound-section - DO NOT EDIT if you wish to automatically upgrade Alsa -> Pulseaudio later! ## +################################################################################################ + +exec --no-startup-id volumeicon +bindsym $mod+Ctrl+m exec terminal -e 'alsamixer' +#exec --no-startup-id pulseaudio +#exec --no-startup-id pa-applet +#bindsym $mod+Ctrl+m exec pavucontrol + +################################################################################################ + +# Screen brightness controls +bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'" +bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'" + +# Start Applications +bindsym $mod+Ctrl+b exec terminal -e 'bmenu' +bindsym $mod+F2 exec palemoon +bindsym $mod+F3 exec pcmanfm +# bindsym $mod+F3 exec ranger +bindsym $mod+Shift+F3 exec pcmanfm_pkexec +bindsym $mod+F5 exec terminal -e 'mocp' +bindsym $mod+t exec --no-startup-id pkill picom +bindsym $mod+Ctrl+t exec --no-startup-id picom -b +bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'" +bindsym Print exec --no-startup-id i3-scrot +bindsym $mod+Print --release exec --no-startup-id i3-scrot -w +bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s +bindsym $mod+Shift+h exec xdg-open /usr/share/doc/manjaro/i3_help.pdf +bindsym $mod+Ctrl+x --release exec --no-startup-id xkill + +# focus_follows_mouse no + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+semicolon focus right + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+j move left +bindsym $mod+Shift+k move down +bindsym $mod+Shift+l move up +bindsym $mod+Shift+semicolon move right + +# alternatively, you can use the cursor keys: +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# workspace back and forth (with/without active container) +workspace_auto_back_and_forth yes +bindsym $mod+b workspace back_and_forth +bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth + +# split orientation +bindsym $mod+h split h;exec notify-send 'tile horizontally' +bindsym $mod+v split v;exec notify-send 'tile vertically' +bindsym $mod+q split toggle + +# toggle fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# toggle sticky +bindsym $mod+Shift+s sticky toggle + +# focus the parent container +bindsym $mod+a focus parent + +# move the currently focused window to the scratchpad +bindsym $mod+Shift+minus move scratchpad + +# Show the next scratchpad window or hide the focused scratchpad window. +# If there are multiple scratchpad windows, this command cycles through them. +bindsym $mod+minus scratchpad show + +#navigate workspaces next / previous +bindsym $mod+Ctrl+Right workspace next +bindsym $mod+Ctrl+Left workspace prev + +# Workspace names +# to display names or symbols instead of plain workspace numbers you can use +# something like: set $ws1 1:mail +# set $ws2 2: +set $ws1 1 +set $ws2 2 +set $ws3 3 +set $ws4 4 +set $ws5 5 +set $ws6 6 +set $ws7 7 +set $ws8 8 + +# switch to workspace +bindsym $mod+1 workspace $ws1 +bindsym $mod+2 workspace $ws2 +bindsym $mod+3 workspace $ws3 +bindsym $mod+4 workspace $ws4 +bindsym $mod+5 workspace $ws5 +bindsym $mod+6 workspace $ws6 +bindsym $mod+7 workspace $ws7 +bindsym $mod+8 workspace $ws8 + +# Move focused container to workspace +bindsym $mod+Ctrl+1 move container to workspace $ws1 +bindsym $mod+Ctrl+2 move container to workspace $ws2 +bindsym $mod+Ctrl+3 move container to workspace $ws3 +bindsym $mod+Ctrl+4 move container to workspace $ws4 +bindsym $mod+Ctrl+5 move container to workspace $ws5 +bindsym $mod+Ctrl+6 move container to workspace $ws6 +bindsym $mod+Ctrl+7 move container to workspace $ws7 +bindsym $mod+Ctrl+8 move container to workspace $ws8 + +# Move to workspace with focused container +bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1 +bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2 +bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3 +bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4 +bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5 +bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6 +bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7 +bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8 + +# Open applications on specific workspaces +# assign [class="Thunderbird"] $ws1 +# assign [class="Pale moon"] $ws2 +# assign [class="Pcmanfm"] $ws3 +# assign [class="Skype"] $ws5 + +# Open specific applications in floating mode +for_window [title="alsamixer"] floating enable border pixel 1 +for_window [class="calamares"] floating enable border normal +for_window [class="Clipgrab"] floating enable +for_window [title="File Transfer*"] floating enable +for_window [class="fpakman"] floating enable +for_window [class="Galculator"] floating enable border pixel 1 +for_window [class="GParted"] floating enable border normal +for_window [title="i3_help"] floating enable sticky enable border normal +for_window [class="Lightdm-settings"] floating enable +for_window [class="Lxappearance"] floating enable sticky enable border normal +for_window [class="Manjaro-hello"] floating enable +for_window [class="Manjaro Settings Manager"] floating enable border normal +for_window [title="MuseScore: Play Panel"] floating enable +for_window [class="Nitrogen"] floating enable sticky enable border normal +for_window [class="Oblogout"] fullscreen enable +for_window [class="octopi"] floating enable +for_window [title="About Pale Moon"] floating enable +for_window [class="Pamac-manager"] floating enable +for_window [class="Pavucontrol"] floating enable +for_window [class="qt5ct"] floating enable sticky enable border normal +for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal +for_window [class="Simple-scan"] floating enable border normal +for_window [class="(?i)System-config-printer.py"] floating enable border normal +for_window [class="Skype"] floating enable border normal +for_window [class="Timeset-gui"] floating enable border normal +for_window [class="(?i)virtualbox"] floating enable border normal +for_window [class="Xfburn"] floating enable + +# switch to workspace with urgent window automatically +for_window [urgent=latest] focus + +# reload the configuration file +bindsym $mod+Shift+c reload + +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart + +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" + +# Set shut down, restart and locking features +bindsym $mod+0 mode "$mode_system" +set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown +mode "$mode_system" { + bindsym l exec --no-startup-id i3exit lock, mode "default" + bindsym s exec --no-startup-id i3exit suspend, mode "default" + bindsym u exec --no-startup-id i3exit switch_user, mode "default" + bindsym e exec --no-startup-id i3exit logout, mode "default" + bindsym h exec --no-startup-id i3exit hibernate, mode "default" + bindsym r exec --no-startup-id i3exit reboot, mode "default" + bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default" + + # exit system mode: "Enter" or "Escape" + bindsym Return mode "default" + bindsym Escape mode "default" +} + +# Resize window (you can also use the mouse for that) +bindsym $mod+r mode "resize" +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym j resize shrink width 5 px or 5 ppt + bindsym k resize grow height 5 px or 5 ppt + bindsym l resize shrink height 5 px or 5 ppt + bindsym semicolon resize grow width 5 px or 5 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 10 px or 10 ppt + bindsym Down resize grow height 10 px or 10 ppt + bindsym Up resize shrink height 10 px or 10 ppt + bindsym Right resize grow width 10 px or 10 ppt + + # exit resize mode: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +# Lock screen +bindsym $mod+9 exec --no-startup-id blurlock + +# Autostart applications +exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 +exec --no-startup-id nitrogen --restore; sleep 1; picom -b +exec --no-startup-id manjaro-hello +exec --no-startup-id nm-applet +exec --no-startup-id xfce4-power-manager +exec --no-startup-id pamac-tray +exec --no-startup-id clipit +# exec --no-startup-id blueman-applet +# exec_always --no-startup-id sbxkb +exec --no-startup-id start_conky_maia +# exec --no-startup-id start_conky_green +exec --no-startup-id xautolock -time 10 -locker blurlock +exec_always --no-startup-id ff-theme-util +exec_always --no-startup-id fix_xcursor + +# Color palette used for the terminal ( ~/.Xresources file ) +# Colors are gathered based on the documentation: +# https://i3wm.org/docs/userguide.html#xresources +# Change the variable name at the place you want to match the color +# of your terminal like this: +# [example] +# If you want your bar to have the same background color as your +# terminal background change the line 362 from: +# background #14191D +# to: +# background $term_background +# Same logic applied to everything else. +set_from_resource $term_background background +set_from_resource $term_foreground foreground +set_from_resource $term_color0 color0 +set_from_resource $term_color1 color1 +set_from_resource $term_color2 color2 +set_from_resource $term_color3 color3 +set_from_resource $term_color4 color4 +set_from_resource $term_color5 color5 +set_from_resource $term_color6 color6 +set_from_resource $term_color7 color7 +set_from_resource $term_color8 color8 +set_from_resource $term_color9 color9 +set_from_resource $term_color10 color10 +set_from_resource $term_color11 color11 +set_from_resource $term_color12 color12 +set_from_resource $term_color13 color13 +set_from_resource $term_color14 color14 +set_from_resource $term_color15 color15 + +# Start i3bar to display a workspace bar (plus the system information i3status if available) +bar { + i3bar_command i3bar + status_command i3status + position top + +## please set your primary output first. Example: 'xrandr --output eDP1 --primary' +# tray_output primary +# tray_output eDP1 + + bindsym button4 nop + bindsym button5 nop +# font xft:URWGothic-Book 11 + strip_workspace_numbers yes + + colors { + background #222D31 + statusline #F9FAF9 + separator #454947 + +# border backgr. text + focused_workspace #F9FAF9 #16a085 #292F34 + active_workspace #595B5B #353836 #FDF6E3 + inactive_workspace #595B5B #222D31 #EEE8D5 + binding_mode #16a085 #2C2C2C #F9FAF9 + urgent_workspace #16a085 #FDF6E3 #E5201D + } +} + +# hide/unhide i3status bar +bindsym $mod+m bar mode toggle + +# Theme colors +# class border backgr. text indic. child_border + client.focused #556064 #556064 #80FFF9 #FDF6E3 + client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948 + client.unfocused #2F3D44 #2F3D44 #1ABC9C #454948 + client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2 + client.placeholder #000000 #0c0c0c #ffffff #000000 + + client.background #2B2C2B + +############################# +### settings for i3-gaps: ### +############################# + +# Set inner/outer gaps +gaps inner 14 +gaps outer -2 + +# Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size. +# gaps inner|outer current|all set|plus|minus +# gaps inner all set 10 +# gaps outer all plus 5 + +# Smart gaps (gaps used if only more than one container on the workspace) +smart_gaps on + +# Smart borders (draw borders around container only if it is not the only container on this workspace) +# on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0) +smart_borders on + +# Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces. +set $mode_gaps Gaps: (o) outer, (i) inner +set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) +set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) +bindsym $mod+Shift+g mode "$mode_gaps" + +mode "$mode_gaps" { + bindsym o mode "$mode_gaps_outer" + bindsym i mode "$mode_gaps_inner" + bindsym Return mode "default" + bindsym Escape mode "default" +} +mode "$mode_gaps_inner" { + bindsym plus gaps inner current plus 5 + bindsym minus gaps inner current minus 5 + bindsym 0 gaps inner current set 0 + + bindsym Shift+plus gaps inner all plus 5 + bindsym Shift+minus gaps inner all minus 5 + bindsym Shift+0 gaps inner all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} +mode "$mode_gaps_outer" { + bindsym plus gaps outer current plus 5 + bindsym minus gaps outer current minus 5 + bindsym 0 gaps outer current set 0 + + bindsym Shift+plus gaps outer all plus 5 + bindsym Shift+minus gaps outer all minus 5 + bindsym Shift+0 gaps outer all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} diff --git a/.config/i3/screenlocker.sh b/.config/i3/screenlocker.sh index 17d55f0..44009b1 100755 --- a/.config/i3/screenlocker.sh +++ b/.config/i3/screenlocker.sh @@ -31,31 +31,32 @@ V='#22bb88ff' # verifying # lock the screen with the blurred picture AND lock icon settings i3lock \ ---insidevercolor=$V \ ---ringvercolor=$V \ +--insidever-color=$V \ +--ringver-color=$V \ \ ---insidewrongcolor=$W \ ---ringwrongcolor=$W \ +--insidewrong-color=$W \ +--ringwrong-color=$W \ \ ---insidecolor=$B \ ---ringcolor=$D \ ---linecolor=$B \ ---separatorcolor=$D \ +--inside-color=$B \ +--ring-color=$D \ +--line-color=$B \ +--separator-color=$D \ \ ---timecolor=$B \ ---datecolor=$B \ +--time-color=$B \ +--date-color=$B \ \ ---verifcolor=$B \ ---wrongcolor=$B \ ---keyhlcolor='4466ccff' \ ---bshlcolor='000000ff' \ +--verif-color=$B \ +--wrong-color=$B \ +--keyhl-color='4466ccff' \ +--bshl-color='000000ff' \ \ --screen 1 \ --indicator \ ---indpos="x+1280:h-710" \ +--ind-pos="x+1280:h-710" \ --verif-align 1 \ --wrong-align 1 \ --radius=100 \ --ring-width=4 \ -i "$tmpbg" +# --image="$tmpbg" diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf new file mode 100644 index 0000000..51e8ded --- /dev/null +++ b/.config/picom/picom.conf @@ -0,0 +1,267 @@ +# Thank you code_nomad: http://9m.no/ꪯ鵞 +# and Arch Wiki contributors: https://wiki.archlinux.org/index.php/Compton + +################################# +# +# Backend +# +################################# + +# Backend to use: "xrender" or "glx". +# GLX backend is typically much faster but depends on a sane driver. +backend = "glx"; + +################################# +# +# GLX backend +# +################################# + +glx-no-stencil = true; + +# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all. +# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified, +# but a 20% increase when only 1/4 is. +# My tests on nouveau show terrible slowdown. +glx-copy-from-front = false; + +# GLX backend: Use MESA_copy_sub_buffer to do partial screen update. +# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated. +# May break VSync and is not available on some drivers. +# Overrides --glx-copy-from-front. +# glx-use-copysubbuffermesa = true; + +# GLX backend: Avoid rebinding pixmap on window damage. +# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe). +# Recommended if it works. +# glx-no-rebind-pixmap = true; + +# GLX backend: GLX buffer swap method we assume. +# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1). +# undefined is the slowest and the safest, and the default value. +# copy is fastest, but may fail on some drivers, +# 2-6 are gradually slower but safer (6 is still faster than 0). +# Usually, double buffer means 2, triple buffer means 3. +# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers. +# Useless with --glx-use-copysubbuffermesa. +# Partially breaks --resize-damage. +# Defaults to undefined. +#glx-swap-method = "undefined"; #deprecated ! +#use-damage = true + +################################# +# +# Shadows +# +################################# + +# Enabled client-side shadows on windows. +shadow = true; +# The blur radius for shadows. (default 12) +shadow-radius = 5; +# The left offset for shadows. (default -15) +shadow-offset-x = 1; +# The top offset for shadows. (default -15) +shadow-offset-y = 1; +# The translucency for shadows. (default .75) +shadow-opacity = 0.3; + +# Set if you want different colour shadows +# shadow-red = 0.0; +# shadow-green = 0.0; +# shadow-blue = 0.0; + +# The shadow exclude options are helpful if you have shadows enabled. Due to the way picom draws its shadows, certain applications will have visual glitches +# (most applications are fine, only apps that do weird things with xshapes or argb are affected). +# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher. +shadow-exclude = [ + "! name~=''", + "name = 'Notification'", + "name = 'Plank'", + "name = 'Docky'", + "name = 'Kupfer'", + "name = 'xfce4-notifyd'", + "name *= 'VLC'", + "name *= 'compton'", + "name *= 'picom'", + "name *= 'Chromium'", + "name *= 'Chrome'", + "class_g = 'Firefox' && argb", + "class_g = 'Conky'", + "class_g = 'Kupfer'", + "class_g = 'Synapse'", + "class_g ?= 'Notify-osd'", + "class_g ?= 'Cairo-dock'", + "class_g ?= 'Xfce4-notifyd'", + "class_g ?= 'Xfce4-power-manager'", + "class_g ?= 'Dmenu'", +# "class_g ?= 'Dunst'", +# disables shadows on i3 frames + "class_g ?= 'i3-frame'", + "_GTK_FRAME_EXTENTS@:c", + "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" +]; +# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners) +shadow-ignore-shaped = false; + +################################# +# +# Opacity +# +################################# + +inactive-opacity = 1; +active-opacity = 1; +frame-opacity = 1; +inactive-opacity-override = false; + +# Dim inactive windows. (0.0 - 1.0) +# inactive-dim = 0.2; +# Do not let dimness adjust based on window opacity. +# inactive-dim-fixed = true; +# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred. +# blur-background = true; +# Blur background of opaque windows with transparent frames as well. +# blur-background-frame = true; +# Do not let blur radius adjust based on window opacity. +blur-background-fixed = false; +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'" +]; + +################################# +# +# Fading +# +################################# + +# Fade windows during opacity changes. +fading = false; +# The time between steps in a fade in milliseconds. (default 10). +fade-delta = 1; +# Opacity change between steps while fading in. (default 0.028). +fade-in-step = 0.03; +# Opacity change between steps while fading out. (default 0.03). +fade-out-step = 0.03; +# Fade windows in/out when opening/closing +# no-fading-openclose = true; + +# Specify a list of conditions of windows that should not be faded. +fade-exclude = [ ]; + +################################# +# +# Other +# +################################# + +# Try to detect WM windows and mark them as active. +mark-wmwin-focused = true; +# Mark all non-WM but override-redirect windows active (e.g. menus). +mark-ovredir-focused = true; +# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events. +# Usually more reliable but depends on a EWMH-compliant WM. +use-ewmh-active-win = true; +# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on. +detect-rounded-corners = true; + +# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows. +# This prevents opacity being ignored for some apps. +# For example without this enabled my xfce4-notifyd is 100% opacity no matter what. +detect-client-opacity = true; + +# Specify refresh rate of the screen. +# If not specified or 0, picom will try detecting this with X RandR extension. +refresh-rate = 0; + +# Vertical synchronization: match the refresh rate of the monitor +vsync = false; + +# Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing. +# Reported to have no effect, though. +dbe = false; + +# Limit picom to repaint at most once every 1 / refresh_rate second to boost performance. +# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already, +# unless you wish to specify a lower refresh rate than the actual value. +#sw-opti = true; + +# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games. +# Known to cause flickering when redirecting/unredirecting windows. +unredir-if-possible = true; + +# Specify a list of conditions of windows that should always be considered focused. +focus-exclude = [ "class_g = 'Cairo-clock'" ]; + +# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time. +detect-transient = true; +# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time. +# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too. +detect-client-leader = true; + +################################# +# +# Window type settings +# +################################# + +wintypes : +{ + tooltip : + { + fade = true; + shadow = false; + opacity = 0.85; + focus = true; + }; + fullscreen : + { + fade = true; + shadow = false; + opacity = 1; + focus = true; + }; +}; + +###################### +# +# XSync +# See: https://github.com/yshui/picom/commit/b18d46bcbdc35a3b5620d817dd46fbc76485c20d +# +###################### + +# Use X Sync fence to sync clients' draw calls. Needed on nvidia-drivers with GLX backend for some users. +xrender-sync-fence = true; + +#opacity-rule = [ +#"99:name *?= 'Call'", +#"99:class_g = 'Chromium'", +#"99:name *?= 'Conky'", +#"99:class_g = 'Darktable'", +#"50:class_g = 'Dmenu'", +#"99:name *?= 'Event'", +#"99:class_g = 'Firefox'", +#"99:class_g = 'GIMP'", +#"99:name *?= 'Image'", +#"99:class_g = 'Lazpaint'", +#"99:class_g = 'Midori'", +#"99:name *?= 'Minitube'", +#"99:class_g = 'Mousepad'", +#"99:name *?= 'MuseScore'", +#"90:name *?= 'Page Info'", +#"99:name *?= 'Pale Moon'", +#"90:name *?= 'Panel'", +#"99:class_g = 'Pinta'", +#"90:name *?= 'Restart'", +#"99:name *?= 'sudo'", +#"99:name *?= 'Screenshot'", +#"99:class_g = 'Viewnior'", +#"99:class_g = 'VirtualBox'", +#"99:name *?= 'VLC'", +#"99:name *?= 'Write'", +#"93:class_g = 'URxvt' && !_NET_WM_STATE@:32a", +#"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'", +#"96:_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'" +#]; + diff --git a/.config/rofi/colors-rofi-dark-mine.rasi b/.config/rofi/colors-rofi-dark-mine.rasi new file mode 100644 index 0000000..85a3c94 --- /dev/null +++ b/.config/rofi/colors-rofi-dark-mine.rasi @@ -0,0 +1,163 @@ +* { + active-background: #538C71; + active-foreground: @foreground; + normal-background: @background; + normal-foreground: @foreground; + urgent-background: #877763; + urgent-foreground: @foreground; + + alternate-active-background: @background; + alternate-active-foreground: @foreground; + alternate-normal-background: @background; + alternate-normal-foreground: @foreground; + alternate-urgent-background: @background; + alternate-urgent-foreground: @foreground; + + /* CHANGE */ + selected-active-background: #877763; + selected-active-foreground: @foreground; + selected-normal-background: #006699; /* higlighted list entry */ + selected-normal-foreground: @foreground; + selected-urgent-background: #91B234; + selected-urgent-foreground: @foreground; + + background-color: @background; + background: #000000; + /* background: #1b1b1b; */ + foreground: #c7c9c6; + border-color: @background; + spacing: 2; +} + +#window { + background-color: @background; + border: 0; + padding: 2.5ch; +} + +#mainbox { + border: 0; + padding: 0; +} + +#message { + border: 2px 0px 0px; + border-color: @border-color; + padding: 1px; +} + +#textbox { + text-color: @foreground; +} + +#inputbar { + children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; +} + +#textbox-prompt-colon { + expand: false; + str: ":"; + margin: 0px 0.3em 0em 0em; + text-color: @normal-foreground; +} + +#listview { + fixed-height: 0; + border: 2px 0px 0px; + border-color: @border-color; + spacing: 2px; + scrollbar: true; + padding: 2px 0px 0px; +} + +#element { + border: 0; + padding: 1px; +} + +#element.normal.normal { + background-color: @normal-background; + text-color: @normal-foreground; +} + +#element.normal.urgent { + background-color: @urgent-background; + text-color: @urgent-foreground; +} + +#element.normal.active { + background-color: @active-background; + text-color: @active-foreground; +} + +#element.selected.normal { + background-color: @selected-normal-background; + text-color: @selected-normal-foreground; +} + +#element.selected.urgent { + background-color: @selected-urgent-background; + text-color: @selected-urgent-foreground; +} + +#element.selected.active { + background-color: @selected-active-background; + text-color: @selected-active-foreground; +} + +#element.alternate.normal { + background-color: @alternate-normal-background; + text-color: @alternate-normal-foreground; +} + +#element.alternate.urgent { + background-color: @alternate-urgent-background; + text-color: @alternate-urgent-foreground; +} + +#element.alternate.active { + background-color: @alternate-active-background; + text-color: @alternate-active-foreground; +} + +#scrollbar { + width: 4px; + border: 0; + handle-width: 8px; + padding: 0; +} + +#sidebar { + border: 2px 0px 0px; + border-color: @border-color; +} + +#button { + text-color: @normal-foreground; +} + +#button.selected { + background-color: @selected-normal-background; + text-color: @selected-normal-foreground; +} + +#inputbar { + spacing: 0; + text-color: @normal-foreground; + padding: 1px; +} + +#case-indicator { + spacing: 0; + text-color: @normal-foreground; +} + +#entry { + spacing: 0; + text-color: @normal-foreground; +} + +#prompt { + spacing: 0; + text-color: @normal-foreground; +} diff --git a/.config/rofi/colors-rofi-dark.rasi b/.config/rofi/colors-rofi-dark-olive.rasi similarity index 100% rename from .config/rofi/colors-rofi-dark.rasi rename to .config/rofi/colors-rofi-dark-olive.rasi diff --git a/.config/rofi/config b/.config/rofi/config deleted file mode 100644 index 65c9bd2..0000000 --- a/.config/rofi/config +++ /dev/null @@ -1,2 +0,0 @@ -#rofi.theme: colors-rofi-dark -rofi.theme: BlackTheme diff --git a/.config/rofi/config.rasi b/.config/rofi/config.rasi new file mode 100644 index 0000000..85a3c94 --- /dev/null +++ b/.config/rofi/config.rasi @@ -0,0 +1,163 @@ +* { + active-background: #538C71; + active-foreground: @foreground; + normal-background: @background; + normal-foreground: @foreground; + urgent-background: #877763; + urgent-foreground: @foreground; + + alternate-active-background: @background; + alternate-active-foreground: @foreground; + alternate-normal-background: @background; + alternate-normal-foreground: @foreground; + alternate-urgent-background: @background; + alternate-urgent-foreground: @foreground; + + /* CHANGE */ + selected-active-background: #877763; + selected-active-foreground: @foreground; + selected-normal-background: #006699; /* higlighted list entry */ + selected-normal-foreground: @foreground; + selected-urgent-background: #91B234; + selected-urgent-foreground: @foreground; + + background-color: @background; + background: #000000; + /* background: #1b1b1b; */ + foreground: #c7c9c6; + border-color: @background; + spacing: 2; +} + +#window { + background-color: @background; + border: 0; + padding: 2.5ch; +} + +#mainbox { + border: 0; + padding: 0; +} + +#message { + border: 2px 0px 0px; + border-color: @border-color; + padding: 1px; +} + +#textbox { + text-color: @foreground; +} + +#inputbar { + children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; +} + +#textbox-prompt-colon { + expand: false; + str: ":"; + margin: 0px 0.3em 0em 0em; + text-color: @normal-foreground; +} + +#listview { + fixed-height: 0; + border: 2px 0px 0px; + border-color: @border-color; + spacing: 2px; + scrollbar: true; + padding: 2px 0px 0px; +} + +#element { + border: 0; + padding: 1px; +} + +#element.normal.normal { + background-color: @normal-background; + text-color: @normal-foreground; +} + +#element.normal.urgent { + background-color: @urgent-background; + text-color: @urgent-foreground; +} + +#element.normal.active { + background-color: @active-background; + text-color: @active-foreground; +} + +#element.selected.normal { + background-color: @selected-normal-background; + text-color: @selected-normal-foreground; +} + +#element.selected.urgent { + background-color: @selected-urgent-background; + text-color: @selected-urgent-foreground; +} + +#element.selected.active { + background-color: @selected-active-background; + text-color: @selected-active-foreground; +} + +#element.alternate.normal { + background-color: @alternate-normal-background; + text-color: @alternate-normal-foreground; +} + +#element.alternate.urgent { + background-color: @alternate-urgent-background; + text-color: @alternate-urgent-foreground; +} + +#element.alternate.active { + background-color: @alternate-active-background; + text-color: @alternate-active-foreground; +} + +#scrollbar { + width: 4px; + border: 0; + handle-width: 8px; + padding: 0; +} + +#sidebar { + border: 2px 0px 0px; + border-color: @border-color; +} + +#button { + text-color: @normal-foreground; +} + +#button.selected { + background-color: @selected-normal-background; + text-color: @selected-normal-foreground; +} + +#inputbar { + spacing: 0; + text-color: @normal-foreground; + padding: 1px; +} + +#case-indicator { + spacing: 0; + text-color: @normal-foreground; +} + +#entry { + spacing: 0; + text-color: @normal-foreground; +} + +#prompt { + spacing: 0; + text-color: @normal-foreground; +} diff --git a/.config/rofi/BlackTheme.rasi b/.config/rofi/old-BlackTheme.rasi similarity index 100% rename from .config/rofi/BlackTheme.rasi rename to .config/rofi/old-BlackTheme.rasi diff --git a/.gitignore b/.gitignore index 3881fb3..0ca8aeb 100644 --- a/.gitignore +++ b/.gitignore @@ -2,9 +2,8 @@ # ignore these filetypes *.o -# ignore st executable -st-* -!st-*/config.h +# ignore executables +bin/lolcat-c # super secret contents .bashrc_secrets @@ -16,4 +15,5 @@ bin/jdk-11* bin/ghidra* bin/android-studio* bin/bookworm +bin/TODO diff --git a/.vimrc b/.vimrc index c1dc584..be268e1 100644 --- a/.vimrc +++ b/.vimrc @@ -13,7 +13,8 @@ "endif " TODO: check _if_ mypeachpuff exists, if not, use peachpuff -colorscheme mypeachpuff +" colorscheme mypeachpuff +colorscheme peachpuff syntax on set guicursor= "force using block cursor (for neovim) diff --git a/.xinitrc b/.xinitrc index fb6491f..23c63e6 100644 --- a/.xinitrc +++ b/.xinitrc @@ -1,13 +1,71 @@ #!/bin/bash +# +# ~/.xinitrc +# +# Executed by startx (run your window manager from here) -# load .Xresources for current X session -[[ -f ~/.Xresources ]] && xrdb -merge -I$HOME ~/.Xresources +userresources=$HOME/.Xresources +usermodmap=$HOME/.Xmodmap +sysresources=/etc/X11/xinit/.Xresources +sysmodmap=/etc/X11/xinit/.Xmodmap + +DEFAULT_SESSION='i3 --shmlog-size 8000000' + +# merge in defaults and keymaps + +if [ -f $sysresources ]; then + xrdb -merge $sysresources +fi + +if [ -f $sysmodmap ]; then + xmodmap $sysmodmap +fi + +if [ -f "$userresources" ]; then + xrdb -merge "$userresources" +fi + +if [ -f "$usermodmap" ]; then + xmodmap "$usermodmap" +fi + +# start some nice programs + +if [ -d /etc/X11/xinit/xinitrc.d ] ; then + for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do + [ -x "$f" ] && . "$f" + done + unset f +fi + +get_session(){ + #local dbus_args=(--sh-syntax --exit-with-session) # <-- broken, use below + local dbus_args=(--sh-syntax) + case $1 in + awesome) dbus_args+=(awesome) ;; + bspwm) dbus_args+=(bspwm-session) ;; + budgie) dbus_args+=(budgie-desktop) ;; + cinnamon) dbus_args+=(cinnamon-session) ;; + deepin) dbus_args+=(startdde) ;; + enlightenment) dbus_args+=(enlightenment_start) ;; + fluxbox) dbus_args+=(startfluxbox) ;; + gnome) dbus_args+=(gnome-session) ;; + i3|i3wm) dbus_args+=(i3 --shmlog-size 0) ;; + jwm) dbus_args+=(jwm) ;; + kde) dbus_args+=(startplasma-x11) ;; + lxde) dbus_args+=(startlxde) ;; + lxqt) dbus_args+=(lxqt-session) ;; + mate) dbus_args+=(mate-session) ;; + xfce) dbus_args+=(xfce4-session) ;; + openbox) dbus_args+=(openbox-session) ;; + *) dbus_args+=($DEFAULT_SESSION) ;; + esac + + # echo "${dbus_args[*]}" # if broken, try this + echo "dbus-launch ${dbus_args[*]}" +} # turn off annoying beep xset b off -# change touchpad sensitivity (1st and 5th values of coord. transform. matrix) -xinput --set-prop 'SynPS/2 Synaptics TouchPad' 'Coordinate Transformation Matrix' 2.4 0 0 0 2.4 0 0 0 1 - -exec i3 - +exec $(get_session "$1") diff --git a/bin/specs.sh b/bin/specs.sh deleted file mode 100755 index 530b81b..0000000 --- a/bin/specs.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh - -# This script (eventually) holds a bunch of commands that display basic -# hardware specification information (CPU, RAM, storage, etc...) so that I less -# frequently need to consult the internet or man pages. -# -# TODO: add more commands for more hardware peripherals -# -# x1phosura - - -_fetch_cpu_info() { - lscpu -} - -_fetch_ram_info() { - lsmem - free -h - # TODO: get info on what model RAM -} - -_fetch_blk_storage_info() { - sudo -v # validate sudo - - # get list of block devices, display information on each - blk_dev_list=$(lsblk | grep 'disk' | awk '{print $1}') - for blk_dev in $blk_dev_list ; do sudo hdparm -I /dev/$blk_dev ; done -} - -# TODO: add following: screen, NIC (wired/wireless), battery, camera, USB ports - - -# TODO: add command-line options to select which specs to display if desired - -_fetch_cpu_info -_fetch_ram_info -_fetch_blk_storage_info - diff --git a/place-dotfiles.sh b/place-dotfiles.sh index c2452dc..f5842a6 100755 --- a/place-dotfiles.sh +++ b/place-dotfiles.sh @@ -3,9 +3,14 @@ # place-dotfiles.sh: simple script to create symlinks from many of my dotfiles # by x1phosura -dotfiles_root="$HOME"/73h4x/dotfiles/x1yoga # where dotfiles live -#dotfiles_root="$PWD" # alternative (for testing) -dest="$HOME" # destination (usually $HOME) +dotfiles_root="$HOME"/73h4x/dotfiles/x1yoga-manjaro # where dotfiles live +#dotfiles_root="$PWD" # alternative (for testing) +dest="$HOME" # destination (usually $HOME) + +if [ ! -d "$dotfiles_root" ]; then + echo "ERROR: $dotfiles_root doesn't exist. Aborting..." + exit 1 +fi if [[ "$(realpath $dotfiles_root)" = "$(realpath $dest)" ]] ; then echo " ERROR: dotfiles_root and dest are the same directory! Aborting..." @@ -16,19 +21,19 @@ dotfile_home_list=".bashrc \ .bashrc_secrets \ .bash_prompt \ .bash_profile \ -.vimrc \ .gdbinit \ .tmux.conf \ +.vimrc \ .xinitrc \ .Xresources" config_dir_list="alacritty \ cava \ -compton \ i3 \ nano \ neofetch \ nvim \ +picom \ polybar \ ranger \ radare2 \