├── rofi ├── rofi_calc_history ├── scripts │ ├── history.txt │ ├── power-menu.sh │ ├── wifi-menu.sh │ └── bluetooth.sh ├── config.rasi └── themes │ ├── squared-material-red.rasi │ └── simple-tokyonight.rasi ├── gtk-3.0 ├── gtk.css └── settings.ini ├── polybar ├── scripts │ ├── dexcom.sh │ ├── playerctl.sh │ └── cava.sh ├── launch.sh └── config.ini ├── images ├── Rice1.png ├── rice-complete.png ├── wallpapers │ ├── TARS.jpg │ ├── city.jpg │ ├── totk.jpg │ ├── TARS-nord.png │ ├── city-nord.png │ ├── gargantua.jpg │ ├── manjaro.png │ ├── nord-botw.png │ ├── superhot.png │ ├── totk-nord.png │ ├── manjaro-black-4k.png │ └── minimalist-planets.jpg └── tint2-icons │ └── galaxy.png ├── fonts ├── DejaVuSansMono-wifi-ramp.ttf └── Iosevka Term Nerd Font Complete.ttf ├── bspwm └── bspwmrc ├── nvim └── init.vim ├── termite └── config ├── README.md ├── sxhkd └── sxhkdrc ├── bash └── .bashrc ├── installer.sh ├── tint2 └── tint2rc ├── dunst └── dunstrc ├── picom └── picom.conf └── neofetch └── config.conf /rofi/rofi_calc_history: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /rofi/scripts/history.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /gtk-3.0/gtk.css: -------------------------------------------------------------------------------- 1 | .termite { padding:5px; } 2 | -------------------------------------------------------------------------------- /polybar/scripts/dexcom.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cat ~/programs/python/pydexcom/BG.txt 3 | -------------------------------------------------------------------------------- /images/Rice1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/Rice1.png -------------------------------------------------------------------------------- /images/rice-complete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/rice-complete.png -------------------------------------------------------------------------------- /images/wallpapers/TARS.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/TARS.jpg -------------------------------------------------------------------------------- /images/wallpapers/city.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/city.jpg -------------------------------------------------------------------------------- /images/wallpapers/totk.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/totk.jpg -------------------------------------------------------------------------------- /images/tint2-icons/galaxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/tint2-icons/galaxy.png -------------------------------------------------------------------------------- /images/wallpapers/TARS-nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/TARS-nord.png -------------------------------------------------------------------------------- /images/wallpapers/city-nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/city-nord.png -------------------------------------------------------------------------------- /images/wallpapers/gargantua.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/gargantua.jpg -------------------------------------------------------------------------------- /images/wallpapers/manjaro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/manjaro.png -------------------------------------------------------------------------------- /images/wallpapers/nord-botw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/nord-botw.png -------------------------------------------------------------------------------- /images/wallpapers/superhot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/superhot.png -------------------------------------------------------------------------------- /images/wallpapers/totk-nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/totk-nord.png -------------------------------------------------------------------------------- /fonts/DejaVuSansMono-wifi-ramp.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/fonts/DejaVuSansMono-wifi-ramp.ttf -------------------------------------------------------------------------------- /images/wallpapers/manjaro-black-4k.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/manjaro-black-4k.png -------------------------------------------------------------------------------- /fonts/Iosevka Term Nerd Font Complete.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/fonts/Iosevka Term Nerd Font Complete.ttf -------------------------------------------------------------------------------- /images/wallpapers/minimalist-planets.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Narmis-E/bspwm-catppuccin/HEAD/images/wallpapers/minimalist-planets.jpg -------------------------------------------------------------------------------- /rofi/scripts/power-menu.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | chosen=$(printf " Power Off\n Restart\n Lock\n Sign Out" | rofi -dmenu -i -theme-str '@import "simple-tokyonight.rasi"') 4 | 5 | case "$chosen" in 6 | " Power Off") systemctl poweroff ;; 7 | " Restart") systemctl reboot ;; 8 | " Lock") i3lock-fancy ;; 9 | " Sign Out") bspc quit ;; 10 | 11 | *) exit 1 ;; 12 | esac 13 | -------------------------------------------------------------------------------- /rofi/config.rasi: -------------------------------------------------------------------------------- 1 | configuration { 2 | show-icons: true; 3 | icon-theme: "Papirus"; 4 | 5 | } 6 | timeout { 7 | action: "kb-cancel"; 8 | delay: 0; 9 | } 10 | filebrowser { 11 | directories-first: true; 12 | sorting-method: "name"; 13 | } 14 | //@theme "/usr/share/rofi/themes/Arc-Dark.rasi" 15 | @theme "/home/narmis/.dotfiles/rofi/themes/simple-tokyonight.rasi" 16 | -------------------------------------------------------------------------------- /gtk-3.0/settings.ini: -------------------------------------------------------------------------------- 1 | [Settings] 2 | gtk-theme-name=Catppuccin-Mocha-Red 3 | gtk-icon-theme-name=Papirus 4 | gtk-font-name=Iosevka Nerd Font 11 5 | gtk-cursor-theme-size=0 6 | gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ 7 | gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR 8 | gtk-button-images=0 9 | gtk-menu-images=0 10 | gtk-enable-event-sounds=1 11 | gtk-enable-input-feedback-sounds=1 12 | gtk-xft-antialias=1 13 | gtk-xft-hinting=1 14 | gtk-xft-hintstyle=hintmedium 15 | gtk-cursor-theme-name=xcursor-breeze-snow 16 | -------------------------------------------------------------------------------- /polybar/scripts/playerctl.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | playerctlstatus=$(playerctl status 2> /dev/null) 4 | title=$(playerctl metadata | grep title | cut -c 35-) 5 | 6 | if [[ $playerctlstatus == "" ]]; then 7 | `polybar-msg cmd hide > /dev/null` 8 | elif [[ $playerctlstatus =~ "Playing" ]]; then 9 | `polybar-msg cmd show > /dev/null` 10 | echo "%{A1:playerctl pause:}  %{A}$title" 11 | else 12 | `polybar-msg cmd show > /dev/null` 13 | echo "%{A1:playerctl play:}  %{A}$title" 14 | fi 15 | -------------------------------------------------------------------------------- /polybar/launch.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | killall -q polybar 3 | # wait untill process is down 4 | while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done 5 | # Launch bars 6 | echo "---" | tee -a /tmp/polybar1.log /tmp/polybar2.log 7 | polybar powermenu 2>&1 | tee -a /tmp/polybar1.log & disown 8 | polybar timespace 2>&1 | tee -a /tmp/polybar2.log & disown 9 | polybar playerctl 2>&1 | tee -a /tmp/polybar2.log & disown 10 | polybar cava 2>&1 | tee -a /tmp/polybar2.log & disown 11 | polybar dexcom 2>&1 | tee -a /tmp/polybar2.log & disown 12 | polybar net 2>&1 | tee -a /tmp/polybar2.log & disown 13 | polybar sysinfo 2>&1 | tee -a /tmp/polybar2.log & disown 14 | -------------------------------------------------------------------------------- /polybar/scripts/cava.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | bar="▁▂▃▄▅▆▇█" 4 | dict="s/;//g;" 5 | 6 | # creating "dictionary" to replace char with bar 7 | i=0 8 | while [ $i -lt ${#bar} ] 9 | do 10 | dict="${dict}s/$i/${bar:$i:1}/g;" 11 | i=$((i=i+1)) 12 | done 13 | 14 | # make sure to clean pipe 15 | pipe="/tmp/cava.fifo" 16 | if [ -p $pipe ]; then 17 | unlink $pipe 18 | fi 19 | mkfifo $pipe 20 | 21 | # write cava config 22 | config_file="/tmp/polybar_cava_config" 23 | echo " 24 | [general] 25 | bars = 9 26 | 27 | [output] 28 | method = raw 29 | raw_target = $pipe 30 | data_format = ascii 31 | ascii_max_range = 7 32 | " > $config_file 33 | 34 | # run cava in the background 35 | cava -p $config_file & 36 | 37 | # reading data from fifo 38 | while read -r cmd; do 39 | echo $cmd | sed $dict 40 | done < $pipe 41 | 42 | -------------------------------------------------------------------------------- /bspwm/bspwmrc: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | # autostart 4 | pgrep -x sxhkd > /dev/null || sxhkd & 5 | $HOME/.config/polybar/launch.sh & 6 | xsetroot -cursor_name left_ptr & 7 | python3 /home/narmis/programs/python/pydexcom/dexcom.py & 8 | picom --animations & 9 | nitrogen --set-scaled ~/Pictures/wallpapers/minimalist-planets.jpg 10 | pgrep -x tint2 > /dev/null || tint2 & 11 | 12 | # workspaces 13 | bspc monitor -d 1 2 3 4 5 6 7 8 9 10 14 | 15 | # window decorations 16 | bspc config border_width 3 17 | bspc config window_gap 12 18 | #bspc config border_radius 19 | bspc config normal_border_color "#7ccdfd" 20 | bspc config active_border_color "#7ccdfd" 21 | bspc config focused_border_color "#f5748c" 22 | bspc config presel-feedback_colour "#fc9d63" 23 | 24 | bspc config focus_follows_pointer true 25 | bspc config pointer_follows_focus true 26 | 27 | bspc config split_ratio 0.52 28 | bspc config borderless_monocle true 29 | bspc config gapless_monocle true 30 | bspc rule -a GalaxyBudsClient state=floating 31 | 32 | bspc rule -a tint2 layer=below 33 | bspc rule -a Gimp desktop='^8' state=floating follow=on 34 | bspc rule -a Chromium desktop='^2' 35 | bspc rule -a mplayer2 state=floating 36 | bspc rule -a Kupfer.py focus=on 37 | bspc rule -a Screenkey manage=off 38 | -------------------------------------------------------------------------------- /nvim/init.vim: -------------------------------------------------------------------------------- 1 | :set number 2 | :set autoindent 3 | :set tabstop=4 4 | :set shiftwidth=4 5 | :set smarttab 6 | :set softtabstop=4 7 | :set mouse=a 8 | :set autochdir 9 | 10 | call plug#begin() 11 | Plug 'http://github.com/tpope/vim-surround' " Surrounding ysw) 12 | Plug 'https://github.com/preservim/nerdtree' " NerdTree 13 | Plug 'https://github.com/tpope/vim-commentary' " For Commenting gcc & gc 14 | Plug 'https://github.com/vim-airline/vim-airline' " Status bar 15 | Plug 'https://github.com/ap/vim-css-color' " CSS Color Preview 16 | Plug 'https://github.com/rafi/awesome-vim-colorschemes' " Retro Scheme 17 | Plug 'neoclide/coc.nvim', {'branch': 'release'} " auto completion 18 | Plug 'https://github.com/ryanoasis/vim-devicons' " Developer Icons 19 | Plug 'https://github.com/tc50cal/vim-terminal' " Vim Terminal 20 | Plug 'https://github.com/preservim/tagbar' " Tagbar for code navigation 21 | Plug 'https://github.com/terryma/vim-multiple-cursors' " CTRL + N for multiple cursors 22 | Plug 'catppuccin/nvim', { 'as': 'catppuccin' } 23 | Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } 24 | Plug 'junegunn/fzf.vim' 25 | 26 | call plug#end() 27 | set encoding=UTF-8 28 | nnoremap :NERDTreeFocus 29 | nnoremap :NERDTree 30 | nnoremap :NERDTreeToggle 31 | inoremap coc#pum#visible() ? coc#pum#confirm() : "\" 32 | nmap :TagbarToggle 33 | 34 | inoremap " "" 35 | inoremap ' '' 36 | inoremap ( () 37 | inoremap [ [] 38 | inoremap {; {};O 39 | cnoremap 40 | inoremap 41 | 42 | nnoremap :sptermJ:resize10 43 | colorscheme catppuccin-mocha 44 | -------------------------------------------------------------------------------- /rofi/scripts/wifi-menu.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | notify-send "Getting list of available Wi-Fi networks..." 4 | # Get a list of available wifi connections and morph it into a nice-looking list 5 | wifi_list=$(nmcli --fields "SECURITY,SSID" device wifi list | sed 1d | sed 's/ */ /g' | sed -E "s/WPA*.?\S/ /g" | sed "s/^--/ /g" | sed "s/ //g" | sed "/--/d") 6 | 7 | connected=$(nmcli -fields WIFI g) 8 | if [[ "$connected" =~ "enabled" ]]; then 9 | toggle="睊 Disable Wi-Fi" 10 | elif [[ "$connected" =~ "disabled" ]]; then 11 | toggle="直 Enable Wi-Fi" 12 | fi 13 | 14 | # Use rofi to select wifi network 15 | chosen_network=$(echo -e "$toggle\n$wifi_list" | uniq -u | rofi -dmenu -i -selected-row 1 -p "Wi-Fi SSID: " ) 16 | # Get name of connection 17 | chosen_id=$(echo "${chosen_network:3}" | xargs) 18 | 19 | if [ "$chosen_network" = "" ]; then 20 | exit 21 | elif [ "$chosen_network" = "直 Enable Wi-Fi" ]; then 22 | nmcli radio wifi on 23 | elif [ "$chosen_network" = "睊 Disable Wi-Fi" ]; then 24 | nmcli radio wifi off 25 | else 26 | # Message to show when connection is activated successfully 27 | success_message="You are now connected to the Wi-Fi network \"$chosen_id\"." 28 | # Get saved connections 29 | saved_connections=$(nmcli -g NAME connection) 30 | if [[ $(echo "$saved_connections" | grep -w "$chosen_id") = "$chosen_id" ]]; then 31 | nmcli connection up id "$chosen_id" | grep "successfully" && notify-send "Connection Established" "$success_message" 32 | else 33 | if [[ "$chosen_network" =~ "" ]]; then 34 | wifi_password=$(rofi -dmenu -p "Password: " ) 35 | fi 36 | nmcli device wifi connect "$chosen_id" password "$wifi_password" | grep "successfully" && notify-send "Connection Established" "$success_message" 37 | fi 38 | fi 39 | -------------------------------------------------------------------------------- /termite/config: -------------------------------------------------------------------------------- 1 | [options] 2 | allow_bold = true 3 | #audible_bell = false 4 | #bold_is_bright = true 5 | #cell_height_scale = 1.0 6 | #cell_width_scale = 1.0 7 | clickable_url = true 8 | dynamic_title = true 9 | font = Iosevka Nerd Font 10 10 | #fullscreen = true 11 | #icon_name = terminal 12 | #mouse_autohide = false 13 | #scroll_on_output = false 14 | #scroll_on_keystroke = true 15 | # Length of the scrollback buffer, 0 disabled the scrollback buffer 16 | # and setting it to a negative value means "infinite scrollback" 17 | scrollback_lines = 10000 18 | #search_wrap = true 19 | #urgent_on_bell = true 20 | #hyperlinks = false 21 | 22 | # $BROWSER is used by default if set, with xdg-open as a fallback 23 | browser = xdg-open 24 | 25 | # "system", "on" or "off" 26 | cursor_blink = system 27 | 28 | # "block", "underline" or "ibeam" 29 | cursor_shape = ibeam 30 | 31 | # Hide links that are no longer valid in url select overlay mode 32 | #filter_unmatched_urls = true 33 | 34 | # Emit escape sequences for extra modified keys 35 | #modify_other_keys = false 36 | 37 | # set size hints for the window 38 | #size_hints = false 39 | 40 | # "off", "left" or "right" 41 | #scrollbar = off 42 | 43 | # ==================================== 44 | [colors] 45 | 46 | # https=//github.com/chriskempson/base16-xresources/blob/master/base16-default.dark.256.xresources 47 | # Base16 Default 48 | # Scheme=Chris Kempson (http=//chriskempson.com) 49 | 50 | foreground=#CDD6F4 51 | background=#1E1E2E 52 | cursor=#F5E0DC 53 | 54 | color0=#45475A 55 | color1=#F38BA8 56 | color2=#A6E3A1 57 | color3=#F9E2AF 58 | color4=#89B4FA 59 | color5=#F5C2E7 60 | color6=#94E2D5 61 | color7=#BAC2DE 62 | 63 | color8=#585B70 64 | color9=#F38BA8 65 | color10=#A6E3A1 66 | color11=#F9E2AF 67 | color12=#89B4FA 68 | color13=#F5C2E7 69 | color14=#94E2D5 70 | color15=#CDD6F4 71 | 72 | color16=#FAB387 73 | color17=#F5E0DC 74 | color18=#282828 75 | color19=#383838 76 | color20=#b8b8b8 77 | color21=#e8e8e8 78 | -------------------------------------------------------------------------------- /rofi/themes/squared-material-red.rasi: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * ROFI SQUARED THEME USING THE MATERIAL DARKER PALETTE 3 | * User : LR-Tech 4 | * Theme Repo : https://github.com/lr-tech/rofi-themes-collection 5 | *******************************************************************************/ 6 | 7 | * { 8 | font: "FiraCode Nerd Font Medium 12"; 9 | 10 | bg0: #23283b; 11 | bg1: #f07178; 12 | fg0: #eeffff; 13 | 14 | accent-color: #7dcfff; 15 | urgent-color: #ffcb6b; 16 | 17 | background-color: transparent; 18 | text-color: @fg0; 19 | 20 | margin: 0; 21 | padding: 0; 22 | spacing: 0; 23 | } 24 | 25 | window { 26 | location: center; 27 | width: 480; 28 | y-offset: -160; 29 | 30 | background-color: @bg0; 31 | } 32 | 33 | inputbar { 34 | spacing: 8px; 35 | padding: 8px; 36 | 37 | background-color: @bg1; 38 | } 39 | 40 | prompt, entry, element-icon, element-text { 41 | vertical-align: 0.5; 42 | } 43 | 44 | prompt { 45 | text-color: @accent-color; 46 | } 47 | 48 | textbox { 49 | padding: 8px; 50 | background-color: @bg1; 51 | } 52 | 53 | listview { 54 | padding: 4px 0; 55 | lines: 8; 56 | columns: 1; 57 | 58 | fixed-height: false; 59 | } 60 | 61 | element { 62 | padding: 8px; 63 | spacing: 8px; 64 | } 65 | 66 | element normal normal { 67 | text-color: @fg0; 68 | } 69 | 70 | element normal urgent { 71 | text-color: @urgent-color; 72 | } 73 | 74 | element normal active { 75 | text-color: @accent-color; 76 | } 77 | 78 | element selected { 79 | text-color: @bg0; 80 | } 81 | 82 | element selected normal, element selected active { 83 | background-color: @accent-color; 84 | } 85 | 86 | element selected urgent { 87 | background-color: @urgent-color; 88 | } 89 | 90 | element-icon { 91 | size: 0.8em; 92 | } 93 | 94 | element-text { 95 | text-color: inherit; 96 | } 97 | -------------------------------------------------------------------------------- /rofi/themes/simple-tokyonight.rasi: -------------------------------------------------------------------------------- 1 | * { 2 | font: "Iosevka Nerd Font Medium 11"; 3 | 4 | bg0 : #1B1B29; 5 | bg1 : #1B1B29; 6 | bg2 : #24283b; 7 | bg3 : #D0885D; 8 | fg0 : #c0caf5; 9 | fg1 : #a9b1d6; 10 | fg2 : #737aa2; 11 | red : #f7768e; 12 | green : #9ece6a; 13 | yellow : #e0af68; 14 | blue : #7aa2f7; 15 | magenta : #9a7ecc; 16 | cyan : #4abaaf; 17 | 18 | accent: @red; 19 | urgent: @yellow; 20 | 21 | background-color : transparent; 22 | text-color : @fg0; 23 | 24 | margin : 0; 25 | padding : 0; 26 | spacing : 0; 27 | } 28 | 29 | element-icon, element-text, scrollbar { 30 | cursor: pointer; 31 | } 32 | 33 | window { 34 | location : northwest; 35 | width : 280px; 36 | x-offset : 13px; 37 | y-offset : 58px; 38 | 39 | background-color: @bg1; 40 | border: 2px; 41 | border-color: @bg3; 42 | border-radius: 6px; 43 | } 44 | 45 | inputbar { 46 | spacing : 8px; 47 | padding : 4px 8px; 48 | children : [ icon-search, entry ]; 49 | 50 | background-color: @bg0; 51 | } 52 | 53 | icon-search, entry, element-icon, element-text { 54 | vertical-align: 0.5; 55 | } 56 | 57 | icon-search { 58 | expand : false; 59 | filename : "search-symbolic"; 60 | size : 14px; 61 | } 62 | 63 | textbox { 64 | padding : 4px 8px; 65 | background-color : @bg2; 66 | } 67 | 68 | listview { 69 | padding : 4px 0px; 70 | lines : 12; 71 | columns : 1; 72 | scrollbar : true; 73 | fixed-height : false; 74 | dynamic : true; 75 | } 76 | 77 | element { 78 | padding : 4px 8px; 79 | spacing : 8px; 80 | } 81 | 82 | element normal urgent { 83 | text-color: @urgent; 84 | } 85 | 86 | element normal active { 87 | text-color: @accent; 88 | } 89 | 90 | element selected { 91 | text-color : @bg1; 92 | background-color : @accent; 93 | } 94 | 95 | element selected urgent { 96 | background-color: @urgent; 97 | } 98 | 99 | element-icon { 100 | size: 0.8em; 101 | } 102 | 103 | element-text { 104 | text-color: inherit; 105 | } 106 | 107 | scrollbar { 108 | handle-width : 4px; 109 | handle-color : @fg2; 110 | padding : 0 4px; 111 | } 112 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Arch Linux BSPWM Ricing [![awesome-rice-badge](https://raw.githubusercontent.com/zemmsoares/awesome-rices/main/assets/awesome-rice-badge.svg)](https://github.com/zemmsoares/awesome-rices) 2 | 3 | My linux configs for bspwm, sxhkd, tint2, polybar, picom, rofi and dunst. 4 | 5 | ![](images/rice-complete.png) 6 | 7 | ### Info: 8 | 📥 = my configs/scripts 9 | 10 | [📥](https://github.com/Narmis-E/linux-config/blob/main/bspwm/bspwmrc) - [bspwmrc](https://github.com/baskerville/bspwm/)\ 11 | [📥](https://github.com/Narmis-E/linux-config/blob/main/tint2/tint2rc) - [tint2](https://github.com/o9000/tint2)\ 12 | [📥](https://github.com/Narmis-E/linux-config/blob/main/sxhkd/sxhkdrc) - [sxhkd](https://github.com/baskerville/sxhkd)\ 13 | [📥](https://github.com/Narmis-E/linux-config/blob/main/polybar/config.ini) - [polybar](https://github.com/polybar/polybar)\ 14 | [📥](https://github.com/Narmis-E/linux-config/blob/main/scripts/playerctl.sh) - [playerctl](https://github.com/altdesktop/playerctl)\ 15 | [📥](https://github.com/Narmis-E/linux-config/blob/main/scripts/net-scroll.sh) - [zscroll](https://github.com/noctuid/zscroll)\ 16 | [📥](https://github.com/Narmis-E/linux-config/blob/main/picom/picom.conf) - [picom](https://github.com/pijulius/picom) (Pijulius fork)\ 17 | [📥](https://github.com/Narmis-E/linux-config/blob/main/termite/config) - [termite](https://github.com/thestinger/termite)\ 18 | [📥](https://github.com/Narmis-E/linux-config/blob/main/rofi/config.rasi) - [rofi](https://github.com/adi1090x/rofi)\ 19 | [📥](https://github.com/Narmis-E/linux-config/blob/main/dunst/dunstrc) - [dunst](https://github.com/dunst-project/dunst)\ 20 | [flameshot](https://github.com/flameshot-org/flameshot)\ 21 | [nitrogen](https://github.com/l3ib/nitrogen) 22 | 23 | ### Colour customisation tools: 24 | [color-picker](https://github.com/Jack12816/colorpicker): pixel hex values to clipboard.\ 25 | [xev](https://github.com/freedesktop/xev): useful for finding the name of certain keystrokes\ 26 | [ImageGoNord](https://github.com/Schrodinger-Hat/ImageGoNord): nordifies any image (see some -nord versions in [wallpapers](https://github.com/Narmis-E/linux-config/tree/main/images/wallpapers))! 27 | 28 | ### This rice is now complete, and I am working on a [pywal version](https://github.com/Narmis-E/bspwm-pywal) because pywal is cool. 29 | -------------------------------------------------------------------------------- /sxhkd/sxhkdrc: -------------------------------------------------------------------------------- 1 | # 2 | # wm independent hotkeys 3 | # 4 | 5 | # terminal emulator 6 | super + Return 7 | termite 8 | 9 | # fireshot 10 | super + Print 11 | flameshot gui 12 | 13 | # rofi locate 14 | super + l 15 | xdg-open "$(locate home media | rofi -threads 0 -width 100 -dmenu -i -p "locate:")" 16 | # rofi locate 17 | super + @space 18 | rofi -show drun -show-icons -drun-icon-theme Papirus 19 | # rofi-calc 20 | super + b 21 | /home/narmis/.dotfiles/rofi/scripts/bluetooth.sh 22 | # rofi-wifi 23 | super + n 24 | /home/narmis/.dotfiles/rofi/scripts/wifi-menu.sh 25 | 26 | # rofi-powermenu 27 | super + x 28 | /home/narmis/.dotfiles/rofi/scripts/power-menu.sh 29 | 30 | # rofi exec 31 | super + r 32 | bash -c "$(rofi -dmenu -p 'Run command')" 33 | 34 | # firefox 35 | super + w 36 | firefox 37 | 38 | #todo 39 | super + shift + t 40 | rofi-todo -f ~/Documents/todo.json 41 | 42 | #file browser 43 | super + shift + a 44 | rofi -show file-browser-extended [ -file-browser-dir /home/narmis/ ] [ -file-browser-cmd /bin/termite ] 45 | 46 | # volume control 47 | XF86AudioLowerVolume 48 | pactl set-sink-volume @DEFAULT_SINK@ -5% 49 | 50 | XF86AudioRaiseVolume 51 | pactl set-sink-volume @DEFAULT_SINK@ +5% 52 | 53 | XF86AudioMute 54 | amixer set Master toggle 55 | 56 | # brightness 57 | XF86MonBrightness{Up,Down} 58 | brightnessctl s 5%{+,-} 59 | 60 | # media controls 61 | XF86AudioPlay 62 | playerctl play-pause 63 | 64 | XF86AudioStop 65 | playerctl stop 66 | 67 | XF86AudioNext 68 | playerctl next 69 | 70 | XF86AudioPrev 71 | playerctl previous 72 | 73 | # thunar 74 | super + a 75 | thunar 76 | 77 | # make sxhkd reload ets configuration files: 78 | super + Escape 79 | pkill -USR1 -x sxhkd 80 | 81 | # 82 | # bspwm hotkeys 83 | # 84 | 85 | # quit/restart bspwm 86 | super + alt + {q,r} 87 | bspc {quit,wm -r} 88 | 89 | # close and kill 90 | super + {_,shift + }q 91 | bspc node -{c,k} 92 | 93 | # alternate between the tiled and monocle layout 94 | super + m 95 | bspc desktop -l next 96 | 97 | # send the newest marked node to the newest preselected node 98 | super + y 99 | bspc node newest.marked.local -n newest.!automatic.local 100 | 101 | # swap the current node and the biggest window 102 | super + g 103 | bspc node -s biggest.window 104 | 105 | # 106 | # state/flags 107 | # 108 | 109 | # set the window state 110 | super + {t,shift + t,s,f} 111 | bspc node -t {tiled,pseudo_tiled,floating,fullscreen} 112 | 113 | # set the node flags 114 | super + ctrl + {m,x,y,z} 115 | bspc node -g {marked,locked,sticky,private} 116 | 117 | # 118 | # focus/swap 119 | # 120 | 121 | # focus the node in the given direction 122 | super + {_,shift + }{h,j,k,l} 123 | bspc node -{f,s} {west,south,north,east} 124 | 125 | # focus the node for the given path jump 126 | #super + {p,b,comma,period} 127 | # bspc node -f @{parent,brother,first,second} 128 | 129 | # focus the next/previous window in the current desktop 130 | super + {_,shift + }c 131 | bspc node -f {next,prev}.local.!hidden.window 132 | 133 | # focus the next/previous desktop in the current monitor 134 | super + bracket{left,right} 135 | bspc desktop -f {prev,next}.local 136 | 137 | # focus the last node/desktop 138 | super + {grave,Tab} 139 | bspc {node,desktop} -f last 140 | 141 | # focus the older or newer node in the focus history 142 | super + {o,i} 143 | bspc wm -h off; \ 144 | bspc node {older,newer} -f; \ 145 | bspc wm -h on 146 | 147 | # focus or send to the given desktop 148 | super + {_,shift + }{1-9,0} 149 | bspc {desktop -f,node -d} '^{1-9,10}' 150 | 151 | # 152 | # preselect 153 | # 154 | 155 | # preselect the direction 156 | super + ctrl + {h,j,k,l} 157 | bspc node -p {west,south,north,east} 158 | 159 | # preselect the ratio 160 | super + ctrl + {1-9} 161 | bspc node -o 0.{1-9} 162 | 163 | # cancel the preselection for the focused node 164 | super + ctrl + space 165 | bspc node -p cancel 166 | 167 | # cancel the preselection for the focused desktop 168 | super + ctrl + shift + space 169 | bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel 170 | 171 | # 172 | # move/resize 173 | # 174 | 175 | # expand a window by moving one of its side outward 176 | super + alt + {h,j,k,l} 177 | bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0} 178 | 179 | # contract a window by moving one of its side inward 180 | super + alt + shift + {h,j,k,l} 181 | bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0} 182 | 183 | # move a floating window 184 | super + {Left,Down,Up,Right} 185 | bspc node -v {-20 0,0 20,0 -20,20 0} 186 | 187 | # scratchpad 188 | alt + Return 189 | ./~/.local/bin/scripts/scpad 190 | -------------------------------------------------------------------------------- /bash/.bashrc: -------------------------------------------------------------------------------- 1 | # 2 | # ~/.bashrc 3 | # 4 | 5 | [[ $- != *i* ]] && return 6 | 7 | colors() { 8 | local fgc bgc vals seq0 9 | 10 | printf "Color escapes are %s\n" '\e[${value};...;${value}m' 11 | printf "Values 30..37 are \e[33mforeground colors\e[m\n" 12 | printf "Values 40..47 are \e[43mbackground colors\e[m\n" 13 | printf "Value 1 gives a \e[1mbold-faced look\e[m\n\n" 14 | 15 | # foreground colors 16 | for fgc in {30..37}; do 17 | # background colors 18 | for bgc in {40..47}; do 19 | fgc=${fgc#37} # white 20 | bgc=${bgc#40} # black 21 | 22 | vals="${fgc:+$fgc;}${bgc}" 23 | vals=${vals%%;} 24 | 25 | seq0="${vals:+\e[${vals}m}" 26 | printf " %-9s" "${seq0:-(default)}" 27 | printf " ${seq0}TEXT\e[m" 28 | printf " \e[${vals:+${vals+$vals;}}1mBOLD\e[m" 29 | done 30 | echo; echo 31 | done 32 | } 33 | 34 | [ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion 35 | 36 | # Change the window title of X terminals 37 | case ${TERM} in 38 | xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*) 39 | PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\007"' 40 | ;; 41 | screen*) 42 | PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\033\\"' 43 | ;; 44 | esac 45 | 46 | use_color=true 47 | 48 | # Set colorful PS1 only on colorful terminals. 49 | # dircolors --print-database uses its own built-in database 50 | # instead of using /etc/DIR_COLORS. Try to use the external file 51 | # first to take advantage of user additions. Use internal bash 52 | # globbing instead of external grep binary. 53 | safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM 54 | match_lhs="" 55 | [[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)" 56 | [[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(/dev/null \ 59 | && match_lhs=$(dircolors --print-database) 60 | [[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true 61 | 62 | if ${use_color} ; then 63 | # Enable colors for ls, etc. Prefer ~/.dir_colors #64489 64 | if type -P dircolors >/dev/null ; then 65 | if [[ -f ~/.dir_colors ]] ; then 66 | eval $(dircolors -b ~/.dir_colors) 67 | elif [[ -f /etc/DIR_COLORS ]] ; then 68 | eval $(dircolors -b /etc/DIR_COLORS) 69 | fi 70 | fi 71 | 72 | if [[ ${EUID} == 0 ]] ; then 73 | PS1='\[\033[01;31m\][\h\[\033[01;36m\] \W\[\033[01;31m\]]\$\[\033[00m\] ' 74 | else 75 | PS1='\[\033[01;32m\][\u@\h\[\033[01;37m\] \W\[\033[01;32m\]]\$\[\033[00m\] ' 76 | fi 77 | 78 | alias ls='ls --color=auto' 79 | alias grep='grep --colour=auto' 80 | alias egrep='egrep --colour=auto' 81 | alias fgrep='fgrep --colour=auto' 82 | else 83 | if [[ ${EUID} == 0 ]] ; then 84 | # show root@ when we don't have colors 85 | PS1='\u@\h \W \$ ' 86 | else 87 | PS1='\u@\h \w \$ ' 88 | fi 89 | fi 90 | 91 | unset use_color safe_term match_lhs sh 92 | 93 | #alias cp="cp -i" # confirm before overwriting something 94 | #alias df='df -h' # human-readable sizes 95 | #alias free='free -m' # show sizes in MB 96 | #alias np='nano -w PKGBUILD' 97 | #alias more=less 98 | alias ch='colorpicker --short --one-shot --preview | xsel -b' 99 | alias vb='nvim ~/.dotfiles/bspwm/bspwmrc' 100 | alias vp='nvim ~/.dotfiles/polybar/config.ini' 101 | alias vs='nvim ~/.dotfiles/sxhkd/sxhkdrc' 102 | alias ls='exa --icons --color=always --group-directories-first' 103 | alias ll='exa -alF --icons --color=always --group-directories-first' 104 | alias la='exa -a --icons --color=always --group-directories-first' 105 | alias l='exa -F --icons --color=always --group-directories-first' 106 | alias l.='exa -a | egrep "^\."' 107 | alias v='nvim' 108 | alias vi='nvim' 109 | alias vim='nvim' 110 | alias sudo='sudo ' 111 | 112 | export PS1="\[\e[31m\]\[\e[m\]\[\e[37m\] \[\e[m\]\[\e[37m\] \[\e[m\]\[\e[36m\]\w\[\e[m\]\[\e[37m\] \[\e[m\]\[\e[31m\]\[\e[m\]\[\e[37m\]\[\e[m\]\[\e[37m\] \[\e[m\]" 113 | 114 | xhost +local:root > /dev/null 2>&1 115 | 116 | # Bash won't get SIGWINCH if another process is in the foreground. 117 | # Enable checkwinsize so that bash will check the terminal size when 118 | # it regains control. #65623 119 | # http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11) 120 | shopt -s checkwinsize 121 | 122 | shopt -s expand_aliases 123 | 124 | # export QT_SELECT=4 125 | 126 | # Enable history appending instead of overwriting. #139609 127 | shopt -s histappend 128 | 129 | # 130 | # # ex - archive extractor 131 | # # usage: ex 132 | ex () 133 | { 134 | if [ -f $1 ] ; then 135 | case $1 in 136 | *.tar.bz2) tar xjf $1 ;; 137 | *.tar.gz) tar xzf $1 ;; 138 | *.bz2) bunzip2 $1 ;; 139 | *.rar) unrar x $1 ;; 140 | *.gz) gunzip $1 ;; 141 | *.tar) tar xf $1 ;; 142 | *.tbz2) tar xjf $1 ;; 143 | *.tgz) tar xzf $1 ;; 144 | *.zip) unzip $1 ;; 145 | *.Z) uncompress $1;; 146 | *.7z) 7z x $1 ;; 147 | *) echo "'$1' cannot be extracted via ex()" ;; 148 | esac 149 | else 150 | echo "'$1' is not a valid file" 151 | fi 152 | } 153 | neofetch 154 | 155 | export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH" 156 | export EDITOR="nvim" 157 | -------------------------------------------------------------------------------- /installer.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | ###### Narmis BSPWM Rice Installer ###### 4 | 5 | read -p "This script is capable of replacing directories and files inside the /home/$USER dir. Proceed? [Y/n]: " accept 6 | 7 | if [ "$accept" = "" ]; then 8 | echo "Making directories..." && sleep 1 9 | cd $HOME/.dotfiles && mkdir $HOME/Downloads/git && cd $HOME/Downloads/git 10 | 11 | echo "Installing packages..." && sleep 1 12 | sudo pacman -S --needed git base-devel && git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si 13 | yay -S catppuccin-gtk-theme-mocha zscroll-git picom-pijulius-git xcursor-breeze bspwm-rounded-corners-git 14 | sudo pacman -S sxhkd polybar lxappearance-gtk3 lxsession brightnessctl papirus-icon-theme playerctl rofi nitrogen tint2 neovim thunar exa dunst 15 | 16 | echo "Installing catppuccin papirus-folders..." && sleep 1 17 | cd $HOME/Downloads/git/ 18 | git clone https://github.com/catppuccin/papirus-folders.git && cd papirus-folders 19 | sudo cp -r src/* /usr/share/icons/Papirus 20 | ./papirus-folders -C cat-mocha-red --theme Papirus 21 | 22 | echo "Installing vim-plug..." && sleep 1 23 | sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ 24 | https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' 25 | 26 | echo "Installing and symlinking dots..." && sleep 1 27 | chmod 755 $HOME/.dotfiles/bspwm/bspwmrc $HOME/.dotfiles/sxhkd/sxhkdrc $HOME/.dotfiles/polybar/launch.sh $HOME/.dotfiles/polybar/scripts/cava.sh $HOME/.dotfiles/polybar/scripts/dexcom.sh $HOME/.dotfiles/polybar/scripts/playerctl.sh $HOME/.dotfiles/rofi/scripts/bluetooth.sh $HOME/.dotfiles/rofi/scripts/power-menu.sh $HOME/.dotfiles/rofi/scripts/wifi-menu.sh && echo "" 28 | 29 | ###### BSPWM ################################################################################ 30 | [ -d "$HOME/.config/bspwm" ] && echo "Directory $HOME/.config/bspwm exists, replace? [Y/n]: " && read bspwm_accept 31 | if [ "$bspwm_accept" = "" ]; then 32 | rm -rf $HOME/.config/bspwm 33 | echo "Removed $HOME/.config/bspwm" 34 | else 35 | echo "Skipped directory." 36 | fi 37 | ln -sf $HOME/.dotfiles/bspwm $HOME/.config/ 38 | 39 | ###### SXHKD ################################################################################ 40 | [ -d "$HOME/.config/sxhkd" ] && echo "Directory $HOME/.config/sxhkd exists, replace? [Y/n]: " && read sxhkd_accept 41 | if [ "$sxhkd_accept" = "" ]; then 42 | rm -rf $HOME/.config/sxhkd 43 | echo "Removed $HOME/.config/sxhkd" 44 | else 45 | echo "Skipped directory." 46 | fi 47 | ln -sf $HOME/.dotfiles/sxhkd $HOME/.config/ 48 | 49 | ###### POLYBAR ################################################################################## 50 | [ -d "$HOME/.config/polybar" ] && echo "Directory $HOME/.config/polybar exists, replace? [Y/n]: " && read poly_accept 51 | if [ "$poly_accept" = "" ]; then 52 | rm -rf $HOME/.config/polybar 53 | echo "Removed $HOME/.config/polybar" 54 | else 55 | echo "Skipped directory." 56 | fi 57 | ln -sf $HOME/.dotfiles/polybar $HOME/.config/ 58 | 59 | ###### TINT2 ################################################################################ 60 | [ -d "$HOME/.config/tint2" ] && echo "Directory $HOME/.config/tint2 exists, replace? [Y/n]: " && read tint_accept 61 | if [ "$tint_accept" = "" ]; then 62 | rm -rf $HOME/.config/tint2 63 | echo "Removed $HOME/.config/tint2" 64 | else 65 | echo "Skipped directory." 66 | fi 67 | ln -sf $HOME/.dotfiles/tint2 $HOME/.config/ 68 | 69 | ###### NEOFETCH ################################################################################### 70 | [ -d "$HOME/.config/neofetch" ] && echo "Directory $HOME/.config/neofetch exists, replace? [Y/n]: " && read neo_accept 71 | if [ "$neo_accept" = "" ]; then 72 | rm -rf $HOME/.config/neofetch 73 | echo "Removed $HOME/.config/neofetch" 74 | else 75 | echo "Skipped directory." 76 | fi 77 | ln -sf $HOME/.dotfiles/neofetch $HOME/.config/ 78 | 79 | ###### NEOVIM ################################################################################################ 80 | [ -d "$HOME/.config/nvim" ] && echo "Directory $HOME/.config/nvim exists, replace? [Y/n]: " && read vim_accept 81 | if [ "$vim_accept" = "" ]; then 82 | rm -rf $HOME/.config/nvim 83 | echo "Removed $HOME/.config/nvim" 84 | else 85 | echo "Skipped directory." 86 | fi 87 | ln -sf $HOME/.dotfiles/nvim $HOME/.config/ 88 | 89 | ###### ROFI ################################################################################################### 90 | [ -d "$HOME/.config/rofi" ] && echo "Directory $HOME/.config/rofi exists, replace? [Y/n]: " && read rofi_accept 91 | if [ "$rofi_accept" = "" ]; then 92 | rm -rf $HOME/.config/rofi 93 | echo "Removed $HOME/.config/rofi" 94 | else 95 | echo "Skipped directory." 96 | fi 97 | ln -sf $HOME/.dotfiles/rofi $HOME/.config/ 98 | 99 | ###### TERMITE ######################################################################################################### 100 | [ -d "$HOME/.config/termite" ] && echo "Directory $HOME/.config/termite exists, replace? [Y/n]: " && read termite_accept 101 | if [ "$termite_accept" = "" ]; then 102 | rm -rf $HOME/.config/termite 103 | echo "Removed $HOME/.config/termite" 104 | else 105 | echo "Skipped directory." 106 | fi 107 | ln -sf $HOME/.dotfiles/termite $HOME/.config/ 108 | 109 | ###### DUNST ######################################################################################################### 110 | [ -d "$HOME/.config/dunst" ] && echo "Directory $HOME/.config/dunst exists, replace? [Y/n]: " && read dunst_accept 111 | if [ "$dunst_accept" = "" ]; then 112 | rm -rf $HOME/.config/dunst 113 | echo "Removed $HOME/.config/dunst" 114 | else 115 | echo "Skipped directory." 116 | fi 117 | ln -sf $HOME/.dotfiles/dunst $HOME/.config/ 118 | 119 | ###### PICOM ##################################################################################################### 120 | [ -d "$HOME/.config/picom" ] && echo "Directory $HOME/.config/picom exists, replace? [Y/n]: " && read picom_accept 121 | if [ "$picom_accept" = "" ]; then 122 | rm -rf $HOME/.config/picom 123 | echo "Removed $HOME/.config/picom" 124 | else 125 | echo "Skipped directory." 126 | fi 127 | ln -sf $HOME/.dotfiles/picom $HOME/.config/ 128 | 129 | ########################################### 130 | 131 | ###### WALLPAPERS ##################################### 132 | ln -sf $HOME/.dotfiles/images/wallpapers $HOME/Pictures 133 | ###### BASHRC ######################################### 134 | ln -sf $HOME/.dotfiles/bash/.bashrc $HOME/ 135 | ###### GTK-3.0 ###################################### 136 | ln -sf $HOME/.dotfiles/gtk-3.0/ $HOME/.config/ 137 | ######################################################### 138 | 139 | echo "Adding fonts and applying GTK-3 config..." && sleep 1 140 | sudo cp $HOME/.dotfiles/fonts/'Iosevka Term Nerd Font Complete.ttf' /usr/share/fonts 141 | sudo cp $HOME/.dotfiles/fonts/'DejaVuSansMono-wifi-ramp.ttf' /usr/share/fonts 142 | 143 | echo "Run ':PlugInstall' inside of nvim to install all of the plugins. Installation complete!" 144 | 145 | ###### END OF INSTALLER ###################################################################### 146 | else 147 | echo "Exited." 148 | exit 149 | fi 150 | -------------------------------------------------------------------------------- /tint2/tint2rc: -------------------------------------------------------------------------------- 1 | #---- Generated by tint2conf 0885 ---- 2 | # See https://gitlab.com/o9000/tint2/wikis/Configure for 3 | # full documentation of the configuration options. 4 | #------------------------------------- 5 | # Gradients 6 | #------------------------------------- 7 | # Backgrounds 8 | # Background 1: Launcher, Systray, Tooltip 9 | rounded = 14 10 | border_width = 2 11 | border_sides = TBLR 12 | border_content_tint_weight = 0 13 | background_content_tint_weight = 0 14 | background_color = #1e1e2e 100 15 | border_color = #d0885d 100 16 | background_color_hover = #23283b 80 17 | border_color_hover = #555555 80 18 | background_color_pressed = #000000 80 19 | border_color_pressed = #555555 80 20 | 21 | # Background 2: Default task, Iconified task 22 | rounded = 0 23 | border_width = 0 24 | border_sides = TBLR 25 | border_content_tint_weight = 0 26 | background_content_tint_weight = 0 27 | background_color = #1e1e2e 100 28 | border_color = #23283b 0 29 | background_color_hover = #23283b 4 30 | border_color_hover = #cccccc 30 31 | background_color_pressed = #989898 21 32 | border_color_pressed = #23283b 30 33 | 34 | # Background 3: Active task 35 | rounded = 0 36 | border_width = 0 37 | border_sides = TBLR 38 | border_content_tint_weight = 0 39 | background_content_tint_weight = 0 40 | background_color = #23283b 21 41 | border_color = #23283b 60 42 | background_color_hover = #23283b 21 43 | border_color_hover = #23283b 60 44 | background_color_pressed = #989898 21 45 | border_color_pressed = #23283b 60 46 | 47 | # Background 4: Urgent task 48 | rounded = 0 49 | border_width = 0 50 | border_sides = TBLR 51 | border_content_tint_weight = 0 52 | background_content_tint_weight = 0 53 | background_color = #aa4400 100 54 | border_color = #aa7733 100 55 | background_color_hover = #aa4400 100 56 | border_color_hover = #aa7733 100 57 | background_color_pressed = #aa4400 100 58 | border_color_pressed = #aa7733 100 59 | 60 | # Background 5: 61 | rounded = 15 62 | border_width = 1 63 | border_sides = TBLR 64 | border_content_tint_weight = 0 65 | background_content_tint_weight = 0 66 | background_color = #1e1e2e 100 67 | border_color = #d0885d 100 68 | background_color_hover = #ffffaa 100 69 | border_color_hover = #999999 100 70 | background_color_pressed = #ffffaa 100 71 | border_color_pressed = #999999 100 72 | 73 | # Background 6: Inactive desktop name, Launcher icon 74 | rounded = 4 75 | border_width = 0 76 | border_sides = TBLR 77 | border_content_tint_weight = 0 78 | background_content_tint_weight = 0 79 | background_color = #23283b 0 80 | border_color = #23283b 30 81 | background_color_hover = #bdbdbd 21 82 | border_color_hover = #cccccc 30 83 | background_color_pressed = #23283b 21 84 | border_color_pressed = #23283b 30 85 | 86 | #------------------------------------- 87 | # Panel 88 | panel_items = L 89 | panel_size = 100% 36 90 | panel_margin = 382 9 91 | panel_padding = 2 0 0 92 | panel_background_id = 0 93 | wm_menu = 1 94 | panel_dock = 1 95 | panel_pivot_struts = 0 96 | panel_position = top left horizontal 97 | panel_layer = normal 98 | panel_monitor = primary 99 | panel_shrink = 1 100 | autohide = 0 101 | autohide_show_timeout = 0.1 102 | autohide_hide_timeout = 0.5 103 | autohide_height = 2 104 | strut_policy = follow_size 105 | panel_window_name = tint2 106 | disable_transparency = 0 107 | mouse_effects = 1 108 | font_shadow = 0 109 | mouse_hover_icon_asb = 100 0 10 110 | mouse_pressed_icon_asb = 100 0 0 111 | scale_relative_to_dpi = 0 112 | scale_relative_to_screen_height = 0 113 | 114 | #------------------------------------- 115 | # Taskbar 116 | taskbar_mode = multi_desktop 117 | taskbar_hide_if_empty = 0 118 | taskbar_padding = 0 0 0 119 | taskbar_background_id = 0 120 | taskbar_active_background_id = 0 121 | taskbar_name = 0 122 | taskbar_hide_inactive_tasks = 0 123 | taskbar_hide_different_monitor = 0 124 | taskbar_hide_different_desktop = 0 125 | taskbar_always_show_all_desktop_tasks = 0 126 | taskbar_name_padding = 4 0 127 | taskbar_name_background_id = 6 128 | taskbar_name_active_background_id = 0 129 | taskbar_name_font = sans Bold 9 130 | taskbar_name_font_color = #dddddd 100 131 | taskbar_name_active_font_color = #dddddd 100 132 | taskbar_distribute_size = 1 133 | taskbar_sort_order = none 134 | task_align = center 135 | 136 | #------------------------------------- 137 | # Task 138 | task_text = 0 139 | task_icon = 1 140 | task_centered = 1 141 | urgent_nb_of_blink = 100000 142 | task_maximum_size = 35 35 143 | task_padding = 4 3 4 144 | task_font = sans 8 145 | task_tooltip = 1 146 | task_thumbnail = 0 147 | task_thumbnail_size = 210 148 | task_font_color = #eeeeee 100 149 | task_icon_asb = 100 0 0 150 | task_background_id = 2 151 | task_active_background_id = 3 152 | task_urgent_background_id = 4 153 | task_iconified_background_id = 2 154 | mouse_left = toggle_iconify 155 | mouse_middle = none 156 | mouse_right = close 157 | mouse_scroll_up = prev_task 158 | mouse_scroll_down = next_task 159 | 160 | #------------------------------------- 161 | # System tray (notification area) 162 | systray_padding = 3 3 3 163 | systray_background_id = 1 164 | systray_sort = descending 165 | systray_icon_size = 24 166 | systray_icon_asb = 100 0 0 167 | systray_monitor = primary 168 | systray_name_filter = 169 | 170 | #------------------------------------- 171 | # Launcher 172 | launcher_padding = 10 3 9 173 | launcher_background_id = 1 174 | launcher_icon_background_id = 6 175 | launcher_icon_size = 33 176 | launcher_icon_asb = 99 0 0 177 | launcher_icon_theme = Papirus 178 | launcher_icon_theme_override = 0 179 | startup_notifications = 0 180 | launcher_tooltip = 1 181 | launcher_item_app = /usr/share/applications/termite.desktop 182 | launcher_item_app = /usr/share/applications/tint2-nvim.desktop 183 | launcher_item_app = /usr/share/applications/xfce4-file-manager.desktop 184 | launcher_item_app = /usr/share/applications/codium.desktop 185 | launcher_item_app = /usr/share/applications/nm-connection-editor.desktop 186 | launcher_item_app = /usr/share/applications/gimp.desktop 187 | launcher_item_app = /usr/share/applications/discord.desktop 188 | launcher_item_app = /usr/share/applications/firefox.desktop 189 | launcher_item_app = /usr/share/applications/galaxybudsclient.desktop 190 | 191 | #------------------------------------- 192 | # Clock 193 | time1_format = %H:%M 194 | time2_format = %A %d %B 195 | time1_font = sans Bold 8 196 | time1_timezone = 197 | time2_timezone = 198 | time2_font = sans 7 199 | clock_font_color = #eeeeee 100 200 | clock_padding = 1 0 201 | clock_background_id = 0 202 | clock_tooltip = 203 | clock_tooltip_timezone = 204 | clock_lclick_command = zenity --calendar --text "" 205 | clock_rclick_command = orage 206 | clock_mclick_command = 207 | clock_uwheel_command = 208 | clock_dwheel_command = 209 | 210 | #------------------------------------- 211 | # Battery 212 | battery_tooltip = 1 213 | battery_low_status = 10 214 | battery_low_cmd = notify-send "battery low" 215 | battery_full_cmd = 216 | bat1_font = sans 8 217 | bat2_font = sans 6 218 | battery_font_color = #eeeeee 100 219 | bat1_format = 220 | bat2_format = 221 | battery_padding = 1 0 222 | battery_background_id = 0 223 | battery_hide = 101 224 | battery_lclick_command = 225 | battery_rclick_command = 226 | battery_mclick_command = 227 | battery_uwheel_command = 228 | battery_dwheel_command = 229 | ac_connected_cmd = 230 | ac_disconnected_cmd = 231 | 232 | #------------------------------------- 233 | # Tooltip 234 | tooltip_show_timeout = 0.2 235 | tooltip_hide_timeout = 0.1 236 | tooltip_padding = 4 5 237 | tooltip_background_id = 1 238 | tooltip_font_color = #7cceff 100 239 | tooltip_font = Iosevka Nerd Font 9 240 | 241 | -------------------------------------------------------------------------------- /polybar/config.ini: -------------------------------------------------------------------------------- 1 | [colors] 2 | background = #1e1e2e 3 | background-alt = #424868 4 | foreground = #F7758D 5 | primary = #7DCFFF 6 | secondary = #8ABEB7 7 | alert = #A54242 8 | disabled = #FE9E64 9 | red = #DB7D97 10 | orange = #D0885D 11 | blue = #7BA2E1 12 | 13 | [global/wm] 14 | margin-bottom = 0 15 | margin-top = 0 16 | 17 | [bar/powermenu] 18 | width = 43 19 | height = 25pt 20 | radius = 15 21 | wm-restack = bspwm 22 | offset-x = 13 23 | offset-y = 9 24 | background = ${colors.background} 25 | foreground = ${colors.foreground} 26 | font-0 = Iosevka Nerd Font:style=Regular:size=18;3 27 | modules-center = arch 28 | cursor-click = pointer 29 | cursor-scroll = ns-resize 30 | border-size = 2.5 31 | border-color = ${colors.orange} 32 | 33 | [bar/timespace] 34 | wm-restack = bspwm 35 | override-redirect = true 36 | width = 310 37 | height = 25pt 38 | radius = 15 39 | fixed-center = false 40 | offset-x = 65 41 | offset-y = 9 42 | background = ${colors.background} 43 | foreground = ${colors.foreground} 44 | padding-left = 0 45 | module-margin = 0 46 | font-0 = Iosevka Nerd Font:style=Regular:size=12;4 47 | modules-left = date xworkspaces 48 | cursor-click = pointer 49 | cursor-scroll = ns-resize 50 | border-size = 2.5 51 | border-color = ${colors.orange} 52 | 53 | [bar/playerctl] 54 | width = 280 55 | height = 25pt 56 | radius = 15 57 | wm-restack = bspwm 58 | offset-x = 723 59 | offset-y = 9 60 | background = ${colors.background} 61 | foreground = ${colors.foreground} 62 | font-0 = Iosevka Nerd Font:style=Regular:size=10;3 63 | modules-center = playerctl 64 | module-margin = 8 65 | cursor-click = pointer 66 | cursor-scroll = ns-resize 67 | enable-ipc = true 68 | border-size = 2.5 69 | border-color = ${colors.orange} 70 | 71 | [bar/cava] 72 | width = 80 73 | height = 25pt 74 | radius = 15 75 | wm-restack = bspwm 76 | offset-x = 1011 77 | offset-y = 9 78 | background = ${colors.background} 79 | foreground = ${colors.foreground} 80 | font-0 = Iosevka Nerd Font:style=Regular:size=10;3 81 | modules-center = cava 82 | module-margin = 8 83 | cursor-click = pointer 84 | cursor-scroll = ns-resize 85 | enable-ipc = true 86 | border-size = 2.5 87 | border-color = ${colors.orange} 88 | 89 | [bar/dexcom] 90 | width = 65 91 | height = 25pt 92 | radius = 15 93 | wm-restack = bspwm 94 | offset-x = 1255 95 | offset-y = 9 96 | background = ${colors.background} 97 | foreground = ${colors.foreground} 98 | font-0 = Iosevka Nerd Font:style=Regular:size=10;3 99 | modules-center = dexcom 100 | module-margin = 8 101 | cursor-click = pointer 102 | cursor-scroll = ns-resize 103 | border-size = 2.5 104 | border-color = ${colors.orange} 105 | click-left = firefox --new-window https://my-nightscout-cgm.herokuapp.com/ 106 | 107 | [bar/net] 108 | #width = 245 109 | width = 215 110 | height = 25pt 111 | radius = 15 112 | override-redirect = true 113 | wm-restack = bspwm 114 | #offset-x = 1215 115 | offset-x = 1330 116 | offset-y = 9 117 | background = ${colors.background} 118 | foreground = ${colors.foreground} 119 | font-0 = Iosevka Nerd Font:style=Regular:size=10;3 120 | font-1 = DejaVuSansMono Nerd Font:size=15;2 121 | font-2 = DejaVu Sans Mono wifi ramp:size=15;2 122 | modules-center = network 123 | cursor-click = pointer 124 | cursor-scroll = ns-resize 125 | border-size = 2.5 126 | border-color = ${colors.orange} 127 | 128 | [bar/sysinfo] 129 | width = 350 130 | height = 25pt 131 | radius = 15 132 | fixed-center = true 133 | override-redirect = true 134 | wm-restack = bspwm 135 | offset-x = 1554 136 | offset-y = 9 137 | background = ${colors.background} 138 | foreground = ${colors.foreground} 139 | padding-left = 1 140 | module-margin = 1 141 | separator = "" 142 | separator-foreground = ${colors.disabled} 143 | font-0 = Iosevka Nerd Font:style=Regular:size=12;3 144 | modules-center = backlight pavolume filesystem memory cpu battery 145 | cursor-click = pointer 146 | cursor-scroll = ns-resize 147 | border-size = 2.5 148 | border-color = ${colors.orange} 149 | 150 | [module/arch] 151 | type = custom/text 152 | content = %{O1} %{O-1pt} 153 | content-margin = 0 154 | click-left = /home/narmis/.dotfiles/rofi/scripts/power-menu.sh 155 | 156 | [module/xworkspaces] 157 | type = internal/xworkspaces 158 | icon-default =  159 | pin-workspaces = true 160 | label-active =  161 | label-active-foreground = ${colors.primary} 162 | label-active-padding = 1 163 | label-occupied = %icon% 164 | label-occupied-padding = 1 165 | label-urgent = %icon% 166 | #label-urgent-background = ${colors.alert} 167 | label-urgent-padding = 1 168 | label-empty = %icon% 169 | label-empty-foreground = ${colors.disabled} 170 | label-empty-padding = 1 171 | label-xworkspaces-padding-left = 7 172 | 173 | [module/filesystem] 174 | type = internal/fs 175 | interval = 25 176 | mount-0 = / 177 | format-mounted-prefix = %{A1:termite -e ncdu:} %{A} 178 | format-mounted-prefix-foreground = ${colors.primary} 179 | label-mounted = %percentage_used%% 180 | label-unmounted = %mountpoint% not mounted 181 | label-unmounted-foreground = ${colors.disabled} 182 | 183 | [module/memory] 184 | type = internal/memory 185 | interval = 2 186 | format-prefix = " " 187 | format-prefix-foreground = ${colors.primary} 188 | label = %percentage_used:2%% 189 | 190 | [module/cpu] 191 | type = internal/cpu 192 | interval = 2 193 | format-prefix = %{A1:termite -e htop:} %{A} 194 | format-prefix-foreground = ${colors.primary} 195 | label = %percentage:2%% 196 | 197 | [module/date] 198 | type = internal/date 199 | interval = 1 200 | date = %l:%M 201 | date-alt = %Y-%m-%d %H:%M:%S 202 | label = %date% 203 | label-margin = 1 204 | 205 | [module/battery] 206 | type = internal/battery 207 | battery = BAT0 208 | adapter = ADP1 209 | full-at = 100 210 | format-charging = 211 | format-discharging = 212 | label-full = %percentage% 213 | ramp-capacity-0 = " " 214 | ramp-capacity-0-foreground = ${colors.alert} 215 | ramp-capacity-1 = " " 216 | ramp-capacity-1-foreground = ${colors.warning} 217 | ramp-capacity-2 = " " 218 | ramp-capacity-3 = " " 219 | ramp-capacity-4 = " " 220 | ramp-capacity-foreground = ${colors.primary} 221 | animation-charging-0 = " " 222 | animation-charging-1 = " " 223 | animation-charging-2 = " " 224 | animation-charging-3 = " " 225 | animation-charging-4 = " " 226 | animation-charging-foreground = ${colors.primary} 227 | animation-charging-framerate = 750 228 | 229 | [module/pavolume] 230 | type = internal/pulseaudio 231 | ;sink = alsa_output.pci-0000_00_1f.3.analog-stereo 232 | use-ui-max = true 233 | interval = 0 234 | format-volume = 235 | format-muted = 236 | ramp-volume-foreground = ${colors.primary} 237 | label-muted = ﱝ 238 | label-muted-foreground = ${colors.primary} 239 | ramp-volume-0 =  240 | ramp-volume-1 =  241 | ramp-volume-2 =  242 | 243 | [module/backlight] 244 | type = internal/backlight 245 | card = nvidia_wmi_ec_backlight 246 | format =