├── LICENSE ├── README.md ├── bin └── fetch ├── config ├── bspwm │ ├── apps │ │ ├── dunst │ │ │ ├── dunstrc │ │ │ ├── latte-dunstrc │ │ │ └── mocha-dunstrc │ │ ├── eww │ │ │ ├── assets │ │ │ │ └── pfp.png │ │ │ ├── bar │ │ │ │ ├── colors │ │ │ │ │ ├── latte.scss │ │ │ │ │ └── mocha.scss │ │ │ │ ├── eww.scss │ │ │ │ ├── eww.yuck │ │ │ │ └── scripts │ │ │ │ │ ├── icons │ │ │ │ │ ├── mute.png │ │ │ │ │ └── volume.png │ │ │ │ │ ├── player.sh │ │ │ │ │ ├── volume.sh │ │ │ │ │ └── workspaces │ │ │ ├── colors │ │ │ │ ├── latte.scss │ │ │ │ └── mocha.scss │ │ │ ├── eww.scss │ │ │ ├── eww.yuck │ │ │ ├── openThemeSwitcher │ │ │ ├── scripts │ │ │ │ ├── switch_theme │ │ │ │ └── watch_theme │ │ │ └── theme_switcher │ │ │ │ ├── colors │ │ │ │ ├── latte.scss │ │ │ │ └── mocha.scss │ │ │ │ ├── eww.scss │ │ │ │ ├── eww.yuck │ │ │ │ └── scripts │ │ │ │ ├── echoSongArt │ │ │ │ ├── getCpu │ │ │ │ ├── getRam │ │ │ │ ├── getSongArt │ │ │ │ ├── player.sh │ │ │ │ ├── playerStatus │ │ │ │ ├── switch_theme │ │ │ │ ├── volume.sh │ │ │ │ └── watch_theme │ │ ├── eww_overhaul │ │ │ ├── colors │ │ │ │ ├── latte.scss │ │ │ │ └── mocha.scss │ │ │ ├── eww.scss │ │ │ ├── eww.yuck │ │ │ └── scripts │ │ │ │ ├── switch_theme │ │ │ │ └── watch_theme │ │ ├── fetch │ │ │ └── conf │ │ ├── jgmenu │ │ │ ├── latte-jgmenurc │ │ │ ├── menu.txt │ │ │ ├── mocha-jgmenurc │ │ │ └── run │ │ ├── kitty │ │ │ ├── colors │ │ │ │ ├── latte.conf │ │ │ │ ├── mocha.conf │ │ │ │ └── rose-pine.conf │ │ │ └── kitty.conf │ │ ├── picom │ │ │ └── picom.conf │ │ ├── polybar │ │ │ ├── .config.ini │ │ │ ├── colors │ │ │ │ ├── colors.ini │ │ │ │ ├── dark-decay.ini │ │ │ │ ├── decay.ini │ │ │ │ ├── decayce.ini │ │ │ │ ├── frappe.ini │ │ │ │ ├── latte.ini │ │ │ │ ├── light-decay.ini │ │ │ │ ├── macchiato.ini │ │ │ │ └── mocha.ini │ │ │ ├── config.ini │ │ │ ├── launch.sh │ │ │ ├── modules │ │ │ │ └── modules.ini │ │ │ └── scripts │ │ │ │ ├── openThemeSwitcher │ │ │ │ └── player.sh │ │ └── rofi │ │ │ ├── colors │ │ │ ├── catppuccin.rasi │ │ │ ├── latte.rasi │ │ │ ├── mocha.rasi │ │ │ └── tokyonight.rasi │ │ │ ├── config.rasi │ │ │ ├── fonts.rasi │ │ │ ├── launch │ │ │ └── powermenu │ ├── autostart.sh │ ├── bspwmrc │ ├── pkglist │ ├── sxhkdrc │ └── wallpapers │ │ ├── flowers.png │ │ ├── neon-shacks-tn.png │ │ ├── pink_minimal.png │ │ ├── pink_sky.png │ │ └── street-tn.png ├── fish │ └── config.fish ├── nvim │ ├── .github │ │ └── FUNDING.yml │ ├── .gitignore │ ├── README.md │ ├── init.lua │ └── lua │ │ └── user │ │ ├── alpha.lua │ │ ├── autocommands.lua │ │ ├── autopairs.lua │ │ ├── bufferline.lua │ │ ├── cmp.lua │ │ ├── colorscheme.lua │ │ ├── comment.lua │ │ ├── dap.lua │ │ ├── gitsigns.lua │ │ ├── illuminate.lua │ │ ├── impatient.lua │ │ ├── indentline.lua │ │ ├── keymaps.lua │ │ ├── lsp │ │ ├── handlers.lua │ │ ├── init.lua │ │ ├── mason.lua │ │ ├── null-ls.lua │ │ └── settings │ │ │ ├── pyright.lua │ │ │ └── sumneko_lua.lua │ │ ├── lualine.lua │ │ ├── nvim-tree.lua │ │ ├── options.lua │ │ ├── plugins.lua │ │ ├── project.lua │ │ ├── telescope.lua │ │ ├── toggleterm.lua │ │ └── treesitter.lua └── starship.toml └── home └── .xsettingsd /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License Copyright (c) 2023 Spaxly 2 | 3 | Permission is hereby granted, free of charge, 4 | to any person obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, distribute, 7 | sublicense, and/or sell copies of the Software, and to permit persons to whom the 8 | Software is furnished to do so, subject to the following conditions: 9 | 10 | The above 11 | copyright notice and this permission notice (including the next paragraph) shall 12 | be included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE 15 | IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 16 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 17 | PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 18 | BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF 19 | CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 20 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | ```ocaml 5 | ohxxm's Dotfiles 6 | ``` 7 |
8 | 9 | ```ocaml 10 | FUNCTIONAL / COMFY / AESTHETIC 11 | ``` 12 |
13 | 14 |

If you decide to use my config, please do give me credit in the README of your fork/repo. 15 |
16 | 17 | https://user-images.githubusercontent.com/68564017/212144838-20e760b7-c5c6-427d-8828-660568d47a20.mp4 18 | 19 | | Feature | Package | 20 | | -------------------- | ------------------------------------------------------- | 21 | | Window Manager | [`bspwm`](https://github.com/baskerville/bspwm) | 22 | | Compositor | [`pijulius/picom`](https://github.com/pijulius/picom) | 23 | | Terminal | [`kitty`](https://github.com/kovidgoyal/kitty) | 24 | | Shell | [`fish`](https://www.fishshell.com/) | 25 | | Editor | [`neovim`](https://github.com/neovim/neovim) | 26 | | Bar | [`polybar`](https://github.com/polybar/polybar) | 27 | | Dashboard | [`eww`](https://github.com/elkowar/eww) | 28 | | Notification Manager | [`dunst`](https://github.com/dunst-project/dunst) | 29 | | Application Launcher | [`rofi`](https://github.com/davatorium/rofi) | 30 | | Application Menu | [`jgmenu`](https://github.com/johanmalm/jgmenu) | 31 | 32 | # Install 33 | ```git clone https://github.com/ohxxm/dotfiles``` 34 |
35 | ```yay -Syu $(cat config/bspwm/pkglist)``` 36 |
37 |
38 | **This command may overwrite your config files** 39 |
40 |
41 | ```cp -rf config/* ~/.config/``` 42 |
43 | ```cp home/* ~/``` 44 |
45 | ```cp bin/* /usr/local/bin/``` 46 |
47 |
48 | **The last command may require superuser permissions** 49 | 50 | # Features 51 | * Hyprland-like animations in BSPWM using picom 52 | * Aesthetic bar config 53 | * Switch between Light & Dark mode in a click of a button! 54 | 55 | # WIP 56 | * EWW Dashboard 57 | 58 | # Credits 59 | 60 | Manas140 - Used his fetch script 61 | AlphaTechnolog - Used his eww config as reference for music players & used his script to fetch the music art 62 | -------------------------------------------------------------------------------- /bin/fetch: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Color variables 4 | cr="\033[1;31m" 5 | ce="\033[1;37m" 6 | cb="\033[1;34m" 7 | 8 | # Colors 9 | c() { printf "\033[%s;%sm" "$1" "$2"; } 10 | 11 | # Import info 12 | . /etc/os-release 13 | 14 | # Get info functions 15 | Name() { 16 | read -r host < /etc/hostname; 17 | printf "%s@%s" "$USER" "$host"; 18 | } 19 | 20 | Os() { printf "%s" "$NAME"; } 21 | 22 | Kernel() { 23 | read -r _ _ kern _ < /proc/version; 24 | printf "%s" "$kern"; 25 | } 26 | 27 | Uptime() { 28 | IFS=. read -r up _ < /proc/uptime; 29 | printf "%dD %dH %dM" "$((up / 60 / 60 / 24))" "$((up / 60 / 60 % 24))" "$((up / 60 % 60))"; 30 | } 31 | 32 | Shell() { printf "%s" "${SHELL##*/}"; } 33 | 34 | Desktop() { 35 | if [ "$DESKTOP_SESSION" != "" ]; then 36 | printf "%s\n" "$DESKTOP_SESSION" 37 | elif [ "$XDG_CURRENT_DESKTOP" != "" ]; then 38 | printf "%s\n" "$XDG_CURRENT_DESKTOP" 39 | else 40 | for i in /proc/*/comm; do 41 | [ -f "$i" ] || continue 42 | read -r p < "$i" 43 | case "$p" in 44 | awesome|xmonad*|qtile|sway|i3|[bfo]*box|*wm*) printf "%s" "${p%%-*}"; break;; 45 | esac 46 | done 47 | fi 48 | } 49 | 50 | Memory() { 51 | while IFS=':k ' read -r mem1 mem2 _; do 52 | case "$mem1" in 53 | MemTotal) 54 | memt="$(( mem2 / 1024 ))";; 55 | MemAvailable) 56 | memu="$(( memt - mem2 / 1024))";; 57 | esac; 58 | done < /proc/meminfo; 59 | printf "%dMib / %dMib" "$memu" "$memt"; 60 | } 61 | 62 | help() { printf "${ce}Usage: fetch [ ${cb}-c${ce} config_file${ce} | ${cb}-d${ce} | ${cb}-h${ce} ] 63 | ${cb}-c:${ce} provide a config 64 | ${cb}-d:${ce} use default config 65 | ${cb}-h:${ce} show help 66 | ${cr}Report issue at:${ce} https://github.com/manas140/fetch\n\n" && exit; } 67 | 68 | def_conf() { 69 | printf " 70 | $(c 1 34)$(Name) 71 | $(c 1 37)Os: $(Os) 72 | Kernel: $(Kernel) 73 | Uptime: $(Uptime) 74 | Shell: $(Shell) 75 | DE/WM: $(Desktop) 76 | Memory: $(Memory) 77 | 78 | $(c 1 90)  $(c 1 31)  $(c 1 32)  $(c 1 33)  $(c 1 34)  $(c 1 35)  $(c 1 36)  $(c 1 37)  $(c 0 0) 79 | \n" 80 | } 81 | 82 | #Import config 83 | if [ -f "$HOME"/.config/fetch/conf ]; then 84 | . "$HOME"/.config/fetch/conf 85 | else 86 | # Default Config 87 | conf() { def_conf; } 88 | fi 89 | 90 | case "$1" in 91 | *-d*) conf() { def_conf; };; 92 | *-c*) [ -f "$2" ] && . "$2" ;; 93 | *-h*) help;; 94 | esac 95 | 96 | conf 97 | -------------------------------------------------------------------------------- /config/bspwm/apps/dunst/dunstrc: -------------------------------------------------------------------------------- 1 | # Documentation: https://dunst-project.org/documentation/ 2 | # Config created by Keyitdev https://www.github.com/keyitdev/dotfiles 3 | # Copyright (C) 2022 Keyitdev 4 | 5 | [global] 6 | monitor = 0 7 | follow = mouse 8 | width = (300,200) 9 | height = 250 10 | origin = top-right 11 | offset = 8x47 12 | indicate_hidden = yes 13 | shrink = no 14 | transparency = 1 15 | notification_height = 0 16 | separator_height = 2 17 | padding = 20 18 | horizontal_padding = 12 19 | frame_width = 2 20 | frame_color = "#89dceb" 21 | separator_color = frame 22 | sort = yes 23 | idle_threshold = 120 24 | font = Roboto mono 12 25 | line_height = 0 26 | markup = full 27 | format = "%s\n%b" 28 | alignment = left 29 | vertical_alignment = center 30 | show_age_threshold = 60 31 | word_wrap = yes 32 | ellipsize = middle 33 | ignore_newline = no 34 | stack_duplicates = true 35 | hide_duplicate_count = false 36 | show_indicators = no 37 | icon_position = left 38 | min_icon_size = 50 39 | max_icon_size = 50 40 | icon_path = /usr/share/icons/Papirus/16x16/ 41 | sticky_history = no 42 | history_length = 50 43 | dmenu = /usr/bin/dmenu -p dunst: 44 | browser = /usr/bin/sensible-browser 45 | always_run_script = true 46 | title = Dunst 47 | class = Dunst 48 | startup_notification = false 49 | verbosity = mesg 50 | corner_radius = 20 51 | ignore_dbusclose = false 52 | force_xinerama = false 53 | mouse_middle_click = do_action, close_current 54 | mouse_right_click = close_all 55 | [experimental] 56 | per_monitor_dpi = false 57 | [shortcuts] 58 | close = ctrl+space 59 | close_all = ctrl+shift+space 60 | history = ctrl+grave 61 | context = ctrl+shift+period 62 | [urgency_low] 63 | background = "#1d1d2d" 64 | foreground = "#cdd6f4" 65 | timeout = 5 66 | [urgency_normal] 67 | background = "#1d1d2d" 68 | foreground = "#cdd6f4" 69 | timeout = 5 70 | [urgency_critical] 71 | background = "#1d1d2d" 72 | foreground = "#cdd6f4" 73 | frame_color = "#f38ba8" 74 | timeout = 0 75 | 76 | -------------------------------------------------------------------------------- /config/bspwm/apps/dunst/latte-dunstrc: -------------------------------------------------------------------------------- 1 | # Documentation: https://dunst-project.org/documentation/ 2 | # Config created by Keyitdev https://www.github.com/keyitdev/dotfiles 3 | # Copyright (C) 2022 Keyitdev 4 | 5 | [global] 6 | monitor = 0 7 | follow = mouse 8 | width = (300,200) 9 | height = 250 10 | origin = top-right 11 | offset = 8x47 12 | indicate_hidden = yes 13 | shrink = no 14 | transparency = 1 15 | notification_height = 0 16 | separator_height = 2 17 | padding = 20 18 | horizontal_padding = 12 19 | frame_width = 2 20 | frame_color = "#1e66f5" 21 | separator_color = frame 22 | sort = yes 23 | idle_threshold = 120 24 | font = JetBrainsMono Nerd Font 12 25 | line_height = 0 26 | markup = full 27 | format = "%s\n%b" 28 | alignment = left 29 | vertical_alignment = center 30 | show_age_threshold = 60 31 | word_wrap = yes 32 | ellipsize = middle 33 | ignore_newline = no 34 | stack_duplicates = true 35 | hide_duplicate_count = false 36 | show_indicators = no 37 | icon_position = left 38 | min_icon_size = 50 39 | max_icon_size = 50 40 | icon_path = /usr/share/icons/Papirus/16x16/ 41 | sticky_history = no 42 | history_length = 50 43 | dmenu = /usr/bin/dmenu -p dunst: 44 | browser = /usr/bin/sensible-browser 45 | always_run_script = true 46 | title = Dunst 47 | class = Dunst 48 | startup_notification = false 49 | verbosity = mesg 50 | corner_radius = 20 51 | ignore_dbusclose = false 52 | force_xinerama = false 53 | mouse_middle_click = do_action, close_current 54 | mouse_right_click = close_all 55 | [experimental] 56 | per_monitor_dpi = false 57 | [shortcuts] 58 | close = ctrl+space 59 | close_all = ctrl+shift+space 60 | history = ctrl+grave 61 | context = ctrl+shift+period 62 | timeout = 0 63 | [urgency_low] 64 | background = "#EFF1F5" 65 | foreground = "#4C4F69" 66 | 67 | [urgency_normal] 68 | background = "#EFF1F5" 69 | foreground = "#4C4F69" 70 | 71 | [urgency_critical] 72 | background = "#EFF1F5" 73 | foreground = "#4C4F69" 74 | frame_color = "#d20f39" 75 | -------------------------------------------------------------------------------- /config/bspwm/apps/dunst/mocha-dunstrc: -------------------------------------------------------------------------------- 1 | # Documentation: https://dunst-project.org/documentation/ 2 | # Config created by Keyitdev https://www.github.com/keyitdev/dotfiles 3 | # Copyright (C) 2022 Keyitdev 4 | 5 | [global] 6 | monitor = 0 7 | follow = mouse 8 | width = (300,200) 9 | height = 250 10 | origin = top-right 11 | offset = 8x47 12 | indicate_hidden = yes 13 | shrink = no 14 | transparency = 1 15 | notification_height = 0 16 | separator_height = 2 17 | padding = 20 18 | horizontal_padding = 12 19 | frame_width = 2 20 | frame_color = "#89dceb" 21 | separator_color = frame 22 | sort = yes 23 | idle_threshold = 120 24 | font = JetBrainsMono Nerd Font 12 25 | line_height = 0 26 | markup = full 27 | format = "%s\n%b" 28 | alignment = left 29 | vertical_alignment = center 30 | show_age_threshold = 60 31 | word_wrap = yes 32 | ellipsize = middle 33 | ignore_newline = no 34 | stack_duplicates = true 35 | hide_duplicate_count = false 36 | show_indicators = no 37 | icon_position = left 38 | min_icon_size = 50 39 | max_icon_size = 50 40 | icon_path = /usr/share/icons/Papirus/16x16/ 41 | sticky_history = no 42 | history_length = 50 43 | dmenu = /usr/bin/dmenu -p dunst: 44 | browser = /usr/bin/sensible-browser 45 | always_run_script = true 46 | title = Dunst 47 | class = Dunst 48 | startup_notification = false 49 | verbosity = mesg 50 | corner_radius = 20 51 | ignore_dbusclose = false 52 | force_xinerama = false 53 | mouse_middle_click = do_action, close_current 54 | mouse_right_click = close_all 55 | [experimental] 56 | per_monitor_dpi = false 57 | [shortcuts] 58 | close = ctrl+space 59 | close_all = ctrl+shift+space 60 | history = ctrl+grave 61 | context = ctrl+shift+period 62 | [urgency_low] 63 | background = "#1d1d2d" 64 | foreground = "#cdd6f4" 65 | timeout = 5 66 | [urgency_normal] 67 | background = "#1d1d2d" 68 | foreground = "#cdd6f4" 69 | timeout = 5 70 | [urgency_critical] 71 | background = "#1d1d2d" 72 | foreground = "#cdd6f4" 73 | frame_color = "#f38ba8" 74 | timeout = 0 75 | 76 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/assets/pfp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ohxxm/dotfiles/72f28463d1cf0fd0d102c570fbde890dcf9b0c7c/config/bspwm/apps/eww/assets/pfp.png -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/colors/latte.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #eff1f5; 3 | $mantle: #e6e9ef; 4 | $crust: #dce0e8; 5 | 6 | $text: #4c4f69; 7 | $subtext0: #6c6f85; 8 | $subtext1: #5c5f77; 9 | 10 | $surface0: #ccd0da; 11 | $surface1: #bcc0cc; 12 | $surface2: #acb0be; 13 | 14 | $overlay0: #9ca0b0; 15 | $overlay1: #8c8fa1; 16 | $overlay2: #7c7f93; 17 | 18 | $blue: #1e66f5; 19 | $lavender: #7287fd; 20 | $sapphire: #209fb5; 21 | $sky: #04a5e5; 22 | $teal: #179299; 23 | $green: #40a02b; 24 | $yellow: #df8e1d; 25 | $peach: #fe640b; 26 | $maroon: #e64553; 27 | $red: #d20f39; 28 | $mauve: #8839ef; 29 | $pink: #ea76cb; 30 | $flamingo: #dd7878; 31 | $rosewater: #dc8a78; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/colors/mocha.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #1e1e2e; 3 | $mantle: #181825; 4 | $crust: #11111b; 5 | 6 | $text: #cdd6f4; 7 | $subtext0: #a6adc8; 8 | $subtext1: #bac2de; 9 | 10 | $surface0: #313244; 11 | $surface1: #45475a; 12 | $surface2: #585b70; 13 | 14 | $overlay0: #6c7086; 15 | $overlay1: #7f849c; 16 | $overlay2: #9399b2; 17 | 18 | $blue: #89b4fa; 19 | $lavender: #b4befe; 20 | $sapphire: #74c7ec; 21 | $sky: #89dceb; 22 | $teal: #94e2d5; 23 | $green: #a6e3a1; 24 | $yellow: #f9e2af; 25 | $peach: #fab387; 26 | $maroon: #eba0ac; 27 | $red: #f38ba8; 28 | $mauve: #cba6f7; 29 | $pink: #f5c2e7; 30 | $flamingo: #f2cdcd; 31 | $rosewater: #f5e0dc; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/eww.scss: -------------------------------------------------------------------------------- 1 | @import 'colors/mocha'; 2 | 3 | * { 4 | all: unset; //Unsets everything so you can style everything from scratch 5 | } 6 | 7 | //Global Styles 8 | .bar { 9 | background-color: $base; 10 | color: $text; 11 | padding: 5px; 12 | } 13 | 14 | .left { 15 | padding-left: 5px; 16 | } 17 | 18 | .center { 19 | padding-top: 5px; 20 | padding-bottom: 5px; 21 | } 22 | 23 | .right { 24 | padding-right: 5px; 25 | } 26 | 27 | scale trough { 28 | all: unset; 29 | background-color: $surface0; 30 | border-radius: 20px; 31 | min-height: 20px; 32 | min-width: 100px; 33 | margin: 0.3rem 0 0.3rem 0.1rem; 34 | } 35 | 36 | .volbar trough highlight { 37 | background: linear-gradient($red, $mauve, $blue, $sky); 38 | border-radius: 20px; 39 | } 40 | 41 | .dots { 42 | color: $overlay2; 43 | font-size: 1.3em; 44 | padding-left: 10px; 45 | padding-right: 10px; 46 | } 47 | 48 | .launcher { 49 | font-family: "Iosevka Nerd Font"; 50 | color: #1793d1; 51 | font-size: 1.8em; 52 | } 53 | 54 | .music { 55 | font-family: "SauceCodePro Nerd Font"; 56 | font-size: 1.1em; 57 | padding: 10px; 58 | font-weight: Bold; 59 | border-radius: 15px; 60 | color: $green; 61 | background-color: $surface0; 62 | } 63 | 64 | .time { 65 | font-family: "JetBrainsMono Nerd Font"; 66 | font-size: 1.3em; 67 | color: $blue; 68 | background-color: $surface0; 69 | padding: 8px; 70 | border-radius: 15px; 71 | } 72 | 73 | // Workspaces 74 | .works { 75 | font-family: "Iosevka Nerd Font"; 76 | // padding: .2rem .7rem .2rem .7rem; 77 | background-color: $surface0; 78 | padding: 10px; 79 | border-radius: 15px; 80 | } 81 | 82 | .0 , .01, .02, .03, .04, .05, .06, 83 | .011, .022, .033, .044, .055, .066{ 84 | } 85 | 86 | /* Unoccupied */ 87 | .0 { 88 | color: $text; 89 | font-size: 0.6em; 90 | } 91 | 92 | /* Occupied */ 93 | .01, .02, .03, .04, .05, .06 { 94 | color: $blue; 95 | font-size: 0.8em; 96 | } 97 | 98 | /* Focused */ 99 | .011, 100 | .022, 101 | .033, 102 | .044, 103 | .055, 104 | .066 { 105 | color: $yellow; 106 | font-size: 1.2em; 107 | } 108 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/eww.yuck: -------------------------------------------------------------------------------- 1 | (defwidget bar [] 2 | (box 3 | :class "bar" 4 | :orientation "h" 5 | (left) 6 | (center) 7 | (right))) 8 | 9 | (defwidget left [] 10 | (box 11 | :orientation "h" 12 | :halign "start" 13 | :valign "center" 14 | :space-evenly "false" 15 | :class "left" 16 | (launch_theme_switcher) 17 | (dots) 18 | (music) 19 | (volum) 20 | )) 21 | 22 | (defwidget center [] 23 | (box 24 | :orientation "v" 25 | :halign "center" 26 | :valign "center" 27 | :space-evenly "false" 28 | :class "center" 29 | (workspaces) 30 | )) 31 | 32 | (defwidget right [] 33 | (box 34 | :orientation "v" 35 | :halign "end" 36 | :valign "center" 37 | :space-evenly "false" 38 | :class "right" 39 | (time))) 40 | 41 | (defwidget workspaces [] 42 | (literal :content workspace)) 43 | (deflisten workspace "scripts/workspaces") 44 | 45 | (defwidget dots [] 46 | (label 47 | :class "dots" 48 | :text "" 49 | ) 50 | ) 51 | 52 | (defwidget launch_theme_switcher [] 53 | (button 54 | :class "launcher" 55 | :onclick "~/.config/bspwm/apps/eww/ewwDashboard" 56 | " " 57 | ) 58 | ) 59 | 60 | (defpoll time :interval "1s" `date "+%I:%M %p"`) 61 | 62 | (defwidget time [] 63 | (label 64 | :class "time" 65 | :text " ${time}" 66 | ) 67 | ) 68 | 69 | (defpoll playerctl :interval "1s" "scripts/player.sh") 70 | 71 | (defwidget music [] 72 | (box 73 | (label 74 | :class "music" 75 | :text " ${playerctl}" 76 | :limit-width 20 77 | ) 78 | ) 79 | ) 80 | 81 | (defpoll volumen :interval "1s" "scripts/volume.sh --percentage") 82 | (defpoll volume_value :interval "1s" "scripts/volume.sh --vol") 83 | (defpoll volume_icon :interval "1s" "scripts/volume.sh --icon") 84 | 85 | ;; Volume Widgets ;; 86 | (defwidget volum [] 87 | (eventbox :onhover "eww -c ~/.config/bspwm/apps/eww/bar/ update volum=true" 88 | :onhoverlost "eww -c ~/.config/bspwm/apps/eww/bar/ update volum=false" 89 | (box :orientation "h" 90 | :space-evenly "false" 91 | :spacing "10" 92 | (label :text "Vol: ") 93 | (scale :class "volbar" 94 | :value volume_value 95 | :onchange "scripts/volume.sh set {}" 96 | :orientation "h" 97 | :flipped false 98 | :tooltip "Volume: ${volumen}" 99 | :max 101 100 | :min 0)) 101 | )) 102 | (defvar volum false) 103 | 104 | (defwindow bar 105 | :monitor 0 106 | :windowtype "dock" 107 | :geometry (geometry :x "0%" 108 | :y "5px" 109 | :width "99%" 110 | :height "60px" 111 | :anchor "top center") 112 | :reserve (struts :side "top" :distance "4%") 113 | (bar)) 114 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/scripts/icons/mute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ohxxm/dotfiles/72f28463d1cf0fd0d102c570fbde890dcf9b0c7c/config/bspwm/apps/eww/bar/scripts/icons/mute.png -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/scripts/icons/volume.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ohxxm/dotfiles/72f28463d1cf0fd0d102c570fbde890dcf9b0c7c/config/bspwm/apps/eww/bar/scripts/icons/volume.png -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/scripts/player.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | player_status=$(playerctl status 2> /dev/null) 4 | 5 | if [ "$player_status" = "Playing" ]; then 6 | echo "$(playerctl metadata artist) - $(playerctl metadata title)" 7 | elif [ "$player_status" = "Paused" ]; then 8 | echo "$(playerctl metadata artist) - $(playerctl metadata title)" 9 | else 10 | echo "Not Playing" 11 | fi 12 | 13 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/scripts/volume.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # @requires: pactl 4 | 5 | SINK=$(pactl list short sinks | sed -e 's,^\([0-9][0-9]*\)[^0-9].*,\1,' | head -n 1) 6 | 7 | percentage () { 8 | local val=$(echo $1 | tr '%' ' ' | awk '{print $1}') 9 | } 10 | 11 | get_percentage () { 12 | local muted=$(pamixer --get-volume-human) 13 | if [[ $muted == 'muted' ]]; then 14 | echo 0% 15 | else 16 | per=$(pactl list sinks | grep '^[[:space:]]Volume:' | head -n $(( $SINK + 1 )) | tail -n 1 | sed -e 's,.* \([0-9][0-9]*\)%.*,\1,') 17 | echo "${per}%" 18 | fi 19 | } 20 | 21 | get_icon () { 22 | local vol=$(get_percentage) 23 | if [[ $vol == "0%" ]]; then 24 | echo "icons/mute.png" 25 | else 26 | echo "icons/volume.png" 27 | fi 28 | } 29 | 30 | get_vol () { 31 | local percent=$(get_percentage) 32 | echo $percent | tr -d '%' 33 | } 34 | 35 | if [[ $1 == "--icon" ]]; then 36 | get_icon 37 | fi 38 | 39 | if [[ $1 == "--percentage" ]]; then 40 | get_percentage 41 | fi 42 | 43 | if [[ $1 == "--vol" ]]; then 44 | get_vol 45 | fi 46 | 47 | if [[ $1 == "--toggle-muted" ]]; then 48 | pamixer -t 49 | fi 50 | 51 | if [[ $1 == "set" ]]; then 52 | val=$(echo $2 | tr '.' ' ' | awk '{print $1}') 53 | if test $val -gt 100; then 54 | val=100 55 | fi 56 | pactl set-sink-volume $SINK $val% 57 | fi 58 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/bar/scripts/workspaces: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | workspaces() { 4 | 5 | ws1=1 6 | ws2=2 7 | ws3=3 8 | ws4=4 9 | ws5=5 10 | 11 | # Unoccupied 12 | un="0" 13 | 14 | # check if Occupied 15 | o1=$(bspc query -D -d .occupied --names | grep "$ws1" ) 16 | o2=$(bspc query -D -d .occupied --names | grep "$ws2" ) 17 | o3=$(bspc query -D -d .occupied --names | grep "$ws3" ) 18 | o4=$(bspc query -D -d .occupied --names | grep "$ws4" ) 19 | o5=$(bspc query -D -d .occupied --names | grep "$ws5" ) 20 | 21 | # check if Focused 22 | f1=$(bspc query -D -d focused --names | grep "$ws1" ) 23 | f2=$(bspc query -D -d focused --names | grep "$ws2" ) 24 | f3=$(bspc query -D -d focused --names | grep "$ws3" ) 25 | f4=$(bspc query -D -d focused --names | grep "$ws4" ) 26 | f5=$(bspc query -D -d focused --names | grep "$ws5" ) 27 | 28 | # check if Urgent 29 | # u1=$(bspc query -D -d .urgent --names | grep 1) 30 | # u2=$(bspc query -D -d .urgent --names | grep 2) 31 | # u3=$(bspc query -D -d .urgent --names | grep 3) 32 | # u4=$(bspc query -D -d .urgent --names | grep 4) 33 | # u5=$(bspc query -D -d .urgent --names | grep 5) 34 | 35 | echo "(box :class \"works\" :orientation \"h\" :halign \"center\" :valign \"start\" :space-evenly \"false\" :spacing \"20\" (button :onclick \"bspc desktop -f $ws1\" :class \"$un$o1$f1\" \" \") (button :onclick \"bspc desktop -f $ws2\" :class \"$un$o2$f2\" \" \") (button :onclick \"bspc desktop -f $ws3\" :class \"$un$o3$f3\" \" \") (button :onclick \"bspc desktop -f $ws4\" :class \"$un$o4$f4\" \" \") (button :onclick \"bspc desktop -f $ws5\" :class \"$un$o5$f5\" \" \" ))" 36 | 37 | } 38 | 39 | workspaces 40 | bspc subscribe desktop node_transfer | while read -r _ ; do 41 | workspaces 42 | done 43 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/colors/latte.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #eff1f5; 3 | $mantle: #e6e9ef; 4 | $crust: #dce0e8; 5 | 6 | $text: #4c4f69; 7 | $subtext0: #6c6f85; 8 | $subtext1: #5c5f77; 9 | 10 | $surface0: #ccd0da; 11 | $surface1: #bcc0cc; 12 | $surface2: #acb0be; 13 | 14 | $overlay0: #9ca0b0; 15 | $overlay1: #8c8fa1; 16 | $overlay2: #7c7f93; 17 | 18 | $blue: #1e66f5; 19 | $lavender: #7287fd; 20 | $sapphire: #209fb5; 21 | $sky: #04a5e5; 22 | $teal: #179299; 23 | $green: #40a02b; 24 | $yellow: #df8e1d; 25 | $peach: #fe640b; 26 | $maroon: #e64553; 27 | $red: #d20f39; 28 | $mauve: #8839ef; 29 | $pink: #ea76cb; 30 | $flamingo: #dd7878; 31 | $rosewater: #dc8a78; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/colors/mocha.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #1e1e2e; 3 | $mantle: #181825; 4 | $crust: #11111b; 5 | 6 | $text: #cdd6f4; 7 | $subtext0: #a6adc8; 8 | $subtext1: #bac2de; 9 | 10 | $surface0: #313244; 11 | $surface1: #45475a; 12 | $surface2: #585b70; 13 | 14 | $overlay0: #6c7086; 15 | $overlay1: #7f849c; 16 | $overlay2: #9399b2; 17 | 18 | $blue: #89b4fa; 19 | $lavender: #b4befe; 20 | $sapphire: #74c7ec; 21 | $sky: #89dceb; 22 | $teal: #94e2d5; 23 | $green: #a6e3a1; 24 | $yellow: #f9e2af; 25 | $peach: #fab387; 26 | $maroon: #eba0ac; 27 | $red: #f38ba8; 28 | $mauve: #cba6f7; 29 | $pink: #f5c2e7; 30 | $flamingo: #f2cdcd; 31 | $rosewater: #f5e0dc; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/eww.scss: -------------------------------------------------------------------------------- 1 | @import 'colors/mocha'; 2 | 3 | * { 4 | all: unset; //Unsets everything so you can style everything from scratch 5 | } 6 | 7 | //Global Styles 8 | .dashboard { 9 | background-color: $base; 10 | color: $text; 11 | padding: 10px; 12 | } 13 | 14 | .title { 15 | font-size: 2.5em; 16 | font-family: JetBrainsMono Nerd Font; 17 | font-weight: Bold; 18 | } 19 | 20 | .name { 21 | font-family: Iosevka Nerd Font; 22 | font-weight: Bold; 23 | font-size: 2em; 24 | padding-left: 5.5em; 25 | padding-bottom: 6em; 26 | } 27 | 28 | .pfp { 29 | background-image: url("assets/pfp.png"); 30 | background-repeat: no-repeat; 31 | background-size:10rem; 32 | min-height: 240px; 33 | min-width: 240px; 34 | } 35 | 36 | .switch_theme_btn { 37 | background-color: $surface0; 38 | color: $text; 39 | border-radius: 20px; 40 | font-size: 1.2em; 41 | padding: 10px; 42 | } 43 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/eww.yuck: -------------------------------------------------------------------------------- 1 | (defwidget dashboard [] 2 | (box :orientation "v" 3 | :class "dashboard" 4 | :space-evenly "false" 5 | (box :orientation "v" 6 | :space-evenly "false" 7 | (title) 8 | (theme_switch) 9 | ))) 10 | 11 | (defpoll SWITCH_THEME "~/.config/bspwm/apps/eww/scripts/watch_theme") 12 | 13 | (defwidget title [] 14 | (box 15 | :class "title" 16 | (label 17 | :text "Theme Switcher" 18 | ) 19 | ) 20 | ) 21 | 22 | (defwidget theme_switch [] 23 | (box 24 | :orientation "v" 25 | :space-evenly "false" 26 | :class "theme_switcher" 27 | (button 28 | :class "switch_theme_btn" 29 | :onclick "~/.config/bspwm/apps/eww/scripts/switch_theme" 30 | "Catppuccin ${SWITCH_THEME}" 31 | ) 32 | ) 33 | ) 34 | 35 | (defwindow dashboard 36 | :monitor 0 37 | :geometry (geometry :x "20" 38 | :y "80" 39 | :height "30%" 40 | :width "15%" 41 | :anchor "top left") 42 | :windowtype "dock" 43 | :wm-ignore true 44 | (dashboard)) 45 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/openThemeSwitcher: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | FILE="$HOME/.cache/eww_launch.theme_switcher" 4 | EWW=`which eww` 5 | 6 | if [[ ! -f "$FILE" ]]; then 7 | touch "$FILE" 8 | eww -c ~/.config/bspwm/apps/eww/theme_switcher/ open-many theme_switcher music resourceUsage 9 | bspc config left_padding 400 10 | else 11 | ${EWW} -c ~/.config/bspwm/apps/eww/theme_switcher/ close theme_switcher music resourceUsage 12 | bspc config left_padding 0 13 | rm "$FILE" 14 | fi 15 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/scripts/switch_theme: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FILE="$HOME/.cache/cached_theme" 4 | KITTY="$HOME/.config/bspwm/apps/kitty/kitty.conf" 5 | BAR="$HOME/.config/bspwm/apps/polybar/config.ini" 6 | GTK="$HOME/.xsettingsd" 7 | ROFI="$HOME/.config/bspwm/apps/rofi/config.rasi" 8 | NEOVIM="$HOME/.config/nvim/lua/user/colorscheme.lua" 9 | EWW="$HOME/.config/bspwm/apps/eww/eww.scss" 10 | DUNST="$HOME/.config/bspwm/autostart.sh" 11 | JGMENU="$HOME/.config/bspwm/apps/jgmenu/run" 12 | 13 | if [[ ! -f "$FILE" ]]; then 14 | touch "$FILE" 15 | fi 16 | 17 | if grep -q "Dark" "$FILE"; then 18 | # DO LIGHT THEME HERE 19 | sed -i '/include/c\include ~\/.config\/bspwm\/apps\/kitty\/colors\/latte.conf' $KITTY 20 | sed -i '/include-file=~\/.config\/bspwm\/apps\/polybar\/colors/c\include-file=~\/.config\/bspwm\/apps\/polybar\/colors\/latte.ini' $BAR 21 | sed -i '/Net\/ThemeName/c\Net\/ThemeName "Catppuccin-Latte-Standard-Blue-Light"' $GTK 22 | sed -i '/@import "colors/c\@import "colors\/latte.rasi"' $ROFI 23 | sed -i '/flavour = "/c\flavour = "latte"' $NEOVIM 24 | sed -i "/@import 'colors\//c\@import 'colors\/latte';" $EWW 25 | sed -i "/dunst -config/c\dunst -config ~\/.config\/bspwm\/apps\/dunst\/latte-dunstrc &" $DUNST 26 | sed -i "/conf_file=/c\conf_file=\$base/latte-jgmenurc" $JGMENU 27 | killall jgmenu 28 | killall dunst 29 | killall xsettingsd 30 | xdotool key ctrl+shift+F5 31 | bspc wm -r 32 | notify-send "Switched to Catppuccin Latte!" 33 | echo "Light" > $FILE 34 | else 35 | sed -i '/include/c\include ~\/.config\/bspwm\/apps\/kitty\/colors\/mocha.conf' $KITTY 36 | sed -i '/include-file=~\/.config\/bspwm\/apps\/polybar\/colors/c\include-file=~\/.config\/bspwm\/apps\/polybar\/colors\/mocha.ini' $BAR 37 | sed -i '/Net\/ThemeName/c\Net\/ThemeName "Catppuccin-Mocha-Standard-Blue-Dark"' $GTK 38 | sed -i '/@import "colors/c\@import "colors\/mocha.rasi"' $ROFI 39 | sed -i '/flavour = "/c\flavour = "mocha"' $NEOVIM 40 | sed -i "/@import 'colors\//c\@import 'colors\/mocha';" $EWW 41 | sed -i "/dunst -config/c\dunst -config ~\/.config\/bspwm\/apps\/dunst\/mocha-dunstrc &" $DUNST 42 | sed -i "/conf_file=/c\conf_file=\$base/mocha-jgmenurc" $JGMENU 43 | killall jgmenu 44 | killall dunst 45 | killall xsettingsd 46 | xdotool key ctrl+shift+F5 47 | bspc wm -r 48 | notify-send "Switched to Catppuccin Mocha!" 49 | echo "Dark" > $FILE 50 | fi 51 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/scripts/watch_theme: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FILE=~/.cache/cached_theme 4 | 5 | if grep -q "Dark" "$FILE" 6 | then 7 | echo "Latte" 8 | else 9 | echo "Mocha" 10 | fi 11 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/colors/latte.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #eff1f5; 3 | $mantle: #e6e9ef; 4 | $crust: #dce0e8; 5 | 6 | $text: #4c4f69; 7 | $subtext0: #6c6f85; 8 | $subtext1: #5c5f77; 9 | 10 | $surface0: #ccd0da; 11 | $surface1: #bcc0cc; 12 | $surface2: #acb0be; 13 | 14 | $overlay0: #9ca0b0; 15 | $overlay1: #8c8fa1; 16 | $overlay2: #7c7f93; 17 | 18 | $blue: #1e66f5; 19 | $lavender: #7287fd; 20 | $sapphire: #209fb5; 21 | $sky: #04a5e5; 22 | $teal: #179299; 23 | $green: #40a02b; 24 | $yellow: #df8e1d; 25 | $peach: #fe640b; 26 | $maroon: #e64553; 27 | $red: #d20f39; 28 | $mauve: #8839ef; 29 | $pink: #ea76cb; 30 | $flamingo: #dd7878; 31 | $rosewater: #dc8a78; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/colors/mocha.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #1e1e2e; 3 | $mantle: #181825; 4 | $crust: #11111b; 5 | 6 | $text: #cdd6f4; 7 | $subtext0: #a6adc8; 8 | $subtext1: #bac2de; 9 | 10 | $surface0: #313244; 11 | $surface1: #45475a; 12 | $surface2: #585b70; 13 | 14 | $overlay0: #6c7086; 15 | $overlay1: #7f849c; 16 | $overlay2: #9399b2; 17 | 18 | $blue: #89b4fa; 19 | $lavender: #b4befe; 20 | $sapphire: #74c7ec; 21 | $sky: #89dceb; 22 | $teal: #94e2d5; 23 | $green: #a6e3a1; 24 | $yellow: #f9e2af; 25 | $peach: #fab387; 26 | $maroon: #eba0ac; 27 | $red: #f38ba8; 28 | $mauve: #cba6f7; 29 | $pink: #f5c2e7; 30 | $flamingo: #f2cdcd; 31 | $rosewater: #f5e0dc; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/eww.scss: -------------------------------------------------------------------------------- 1 | @import 'colors/mocha'; 2 | 3 | * { 4 | all: unset; //Unsets everything so you can style everything from scratch 5 | } 6 | 7 | //Global Styles 8 | .theme_switcher { 9 | background-color: $base; 10 | padding: 1rem; 11 | } 12 | 13 | .music { 14 | background-color: $base; 15 | padding: 1rem; 16 | } 17 | 18 | .stats { 19 | padding: 1rem; 20 | background-color: $base; 21 | } 22 | 23 | .statsTitle { 24 | font-size: 2.5em; 25 | font-family: JetBrainsMono Nerd Font; 26 | font-weight: Bold; 27 | background-color: $base; 28 | color: $text; 29 | padding: 10px; 30 | } 31 | 32 | .title { 33 | font-size: 2.5em; 34 | font-family: JetBrainsMono Nerd Font; 35 | font-weight: Bold; 36 | background-color: $base; 37 | color: $text; 38 | padding: 10px; 39 | } 40 | 41 | 42 | .switch_theme_btn { 43 | background-color: $surface0; 44 | color: $text; 45 | border-radius: 20px; 46 | font-size: 1.2em; 47 | padding: 10px; 48 | margin: 10px; 49 | } 50 | 51 | .music_title { 52 | font-size: 2.5em; 53 | font-family: JetBrainsMono Nerd Font; 54 | font-weight: Bold; 55 | color: $text; 56 | // padding: 10px; 57 | } 58 | 59 | .music_label { 60 | font-family: JetBrainsMono Nerd Font; 61 | font-weight: Bold; 62 | font-size: 1.2em; 63 | padding: 10px; 64 | color: $text; 65 | // margin: 10px; 66 | } 67 | 68 | .music_art { 69 | background-size: 100% 100%; 70 | background-repeat: no-repeat; 71 | border-radius: 10px; 72 | min-width: 360px; 73 | // min-height: 100px; 74 | } 75 | 76 | .music_controls { 77 | font-size: 2em; 78 | color: $blue; 79 | font-family: JetBrainsMono Nerd Font; 80 | margin: 10px; 81 | } 82 | 83 | .toggle_play { 84 | font-size: 1.2em; 85 | } 86 | 87 | .previous_btn { 88 | font-size: 0.8em; 89 | } 90 | 91 | .next_btn { 92 | margin-right: 50px; 93 | font-size: 0.8em; 94 | } 95 | 96 | .volume-slider trough { 97 | padding: 0.5em; 98 | background-color: $surface0; 99 | border-radius: 15px; 100 | } 101 | 102 | .volume-slider highlight { 103 | padding: 0.5em; 104 | background-color: $blue; 105 | border-radius: 15px; 106 | } 107 | 108 | .vol_btn { 109 | background-repeat: no-repeat; 110 | background-size: 25px; 111 | min-height: 25px; 112 | min-width: 10px; 113 | } 114 | 115 | .vol_percentage { 116 | font-family: Iosevka Nerd Font; 117 | color: $text; 118 | font-size: 1.3em; 119 | } 120 | 121 | .ram-label { 122 | padding: 1em; 123 | font-family: Iosevka Nerd Font; 124 | color: $red; 125 | font-size: 2em; 126 | } 127 | 128 | .ram { 129 | background-color: $surface0; 130 | border-radius: 10px; 131 | padding: 10px; 132 | } 133 | 134 | .ram-circle { 135 | color: $red; 136 | background-color: $surface2; 137 | } 138 | 139 | .cpu-label { 140 | padding: 1em; 141 | font-family: Iosevka Nerd Font; 142 | color: $green; 143 | font-size: 2em; 144 | } 145 | 146 | .cpu { 147 | background-color: $surface0; 148 | border-radius: 10px; 149 | padding: 10px; 150 | } 151 | 152 | .cpu-circle { 153 | color: $green; 154 | background-color: $surface2; 155 | } 156 | 157 | .pulseaudio_eq { 158 | background-color: $surface0; 159 | padding: 10px; 160 | margin-top: 10px; 161 | font-size: 1.3em; 162 | border-radius: 20px; 163 | color: $green; 164 | font-family: Iosevka Nerd Font; 165 | font-weight: Bold; 166 | } 167 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/eww.yuck: -------------------------------------------------------------------------------- 1 | (defwidget theme_switcher [] 2 | (box :orientation "v" 3 | :space-evenly "false" 4 | :class "theme_switcher" 5 | (theme_switch) 6 | ) 7 | ) 8 | 9 | (defwidget playerctl [] 10 | (box :orientation "v" 11 | :space-evenly "false" 12 | :halign "center" 13 | :valign "center" 14 | :width 390 15 | :class "music" 16 | (music_title) 17 | (music) 18 | (music_art) 19 | (music_controls) 20 | (volume_slider) 21 | (pulseaudio_eq) 22 | ) 23 | ) 24 | 25 | (defwidget stats [] 26 | (box :orientation "v" 27 | :space-evenly false 28 | ; :halign "center" 29 | ; :valign "center" 30 | :width 390 31 | :class "stats" 32 | (stats_title) 33 | (box :orientation "h" 34 | :space-evenly false 35 | :halign "center" 36 | :spacing 20 37 | :class "stats" 38 | (ram-circular) 39 | (cpu-circular) 40 | ) 41 | ) 42 | ) 43 | 44 | (defwidget stats_title [] 45 | (box 46 | :orientation "h" 47 | :spacing 0 48 | (label 49 | :text "Resources" 50 | :class "statsTitle" 51 | ) 52 | ) 53 | ) 54 | 55 | (defwidget radialmeter [value text ?class ?labelclass] 56 | (circular-progress :value value 57 | :class "radial ${class}" 58 | :start-angle 0 59 | :thickness 12 60 | (label :text text 61 | :class "radial-label ${labelclass}" 62 | :limit-width 2 63 | :show_truncated false 64 | :wrap false 65 | :angle 0.0))) 66 | 67 | (defpoll ramUsage :interval "1s" "scripts/getRam") 68 | (defpoll cpuUsage :interval "1s" "scripts/getCpu") 69 | 70 | (defwidget ram-circular [] 71 | (box 72 | :spacing 0 73 | :orientation "h" 74 | :space-evenly false 75 | :halign "center" 76 | (box 77 | :spacing 0 78 | :orientation "h" 79 | :space-evenly false 80 | :class "ram" 81 | :halign "center" 82 | :tooltip "Usage: ${ramUsage}%" 83 | (radialmeter 84 | :value ramUsage 85 | :text " " 86 | :labelclass "ram-label" 87 | :class "ram-circle" 88 | ) 89 | ) 90 | ) 91 | ) 92 | 93 | (defwidget cpu-circular [] 94 | (box 95 | :spacing 0 96 | :orientation "h" 97 | :space-evenly false 98 | :halign "center" 99 | (box 100 | :spacing 0 101 | :orientation "h" 102 | :space-evenly false 103 | :halign "center" 104 | :class "cpu" 105 | :tooltip "Usage: ${cpuUsage}%" 106 | (radialmeter 107 | :value cpuUsage 108 | :text " " 109 | :labelclass "cpu-label" 110 | :class "cpu-circle" 111 | ) 112 | ) 113 | ) 114 | ) 115 | 116 | (deflisten vol "scripts/volume.sh --vol") 117 | (defpoll vol_percentage :interval "0.1s" "scripts/volume.sh --percentage") 118 | 119 | (defwidget volume_slider [] 120 | (box :orientation "h" 121 | :class "volume-main" 122 | :space-evenly "false" 123 | :halign "center" 124 | (label :class "vol_percentage" 125 | :text "${vol_percentage} ") 126 | (scale :class "volume-slider" 127 | :value {vol == "" ? 0 : vol} 128 | ; :value vol 129 | :orientation "h" 130 | :width 260 131 | :max 101 132 | :min 0 133 | :marks true 134 | :onchange "scripts/volume.sh set {}") 135 | )) 136 | 137 | (defpoll SWITCH_THEME :interval "1s" "~/.config/bspwm/apps/eww/theme_switcher/scripts/watch_theme") 138 | (defpoll music :interval "0.1s" "scripts/player.sh --song_name") 139 | (defpoll art :interval "1s" "scripts/player.sh --song_art") 140 | (defpoll song_art :interval "1s" "scripts/player.sh --get_song_art") 141 | (defpoll song_status :interval "0.5s" "scripts/player.sh --status_icon") 142 | 143 | (defwidget pulseaudio_eq [] 144 | (box 145 | :orientation "h" 146 | :class "pulseaudio_eq" 147 | :space-evenly "false" 148 | :halign "center" 149 | :valign "center" 150 | (button 151 | :onclick "pulseaudio-equalizer toggle" 152 | "Toggle EQ" 153 | ) 154 | ) 155 | ) 156 | 157 | (defwidget music_controls [] 158 | (box 159 | :orientation "h" 160 | :class "music_controls" 161 | :space-evenly "true" 162 | ; :spacing 30 163 | :halign "center" 164 | :valign "center" 165 | :hexpand "false" 166 | :vexpand "false" 167 | (button :class "previous_btn" :onclick "playerctl previous" "ﭢ") 168 | (button :class "toggle_play" :onclick "playerctl play-pause" song_status) 169 | (button :class "next_btn" :onclick "playerctl next" "ﭠ ") 170 | ) 171 | ) 172 | 173 | (defwidget music_art [] 174 | (box :orientation "v" 175 | :space-evenly "false" 176 | :valign "center" 177 | :halign "center" 178 | ; :vexpand "true" 179 | ; :hexpand "true" 180 | :class "music_art" 181 | :width 100 182 | :height 330 183 | :style "background-image: url('${art}')" 184 | song_art 185 | ) 186 | ) 187 | 188 | (defwidget music_title [] 189 | (box :orientation "v" 190 | :space-evenly "false" 191 | (label 192 | :text "Now Playing" 193 | :class "music_title" 194 | ) 195 | ) 196 | ) 197 | 198 | (defwidget music [] 199 | (label 200 | :text "${music}" 201 | :class "music_label" 202 | :limit-width 20 203 | ; :height 200 204 | ; :width 390 205 | ) 206 | ) 207 | 208 | (defwidget theme_switch [] 209 | (box 210 | :orientation "v" 211 | (label :text "Theme Switcher" :class "title") 212 | (box 213 | :orientation "v" 214 | :space-evenly "false" 215 | (button 216 | :class "switch_theme_btn" 217 | :onclick "~/.config/bspwm/apps/eww/theme_switcher/scripts/switch_theme" 218 | "Catppuccin ${SWITCH_THEME}" 219 | ) 220 | ) 221 | ) 222 | ) 223 | 224 | (defwindow resourceUsage 225 | :monitor 0 226 | :geometry (geometry :x "13" 227 | :y "900" 228 | ; :width "10%" 229 | ; :height "10%" 230 | :anchor "top left") 231 | :windowtype "dock" 232 | :wm-ignore true 233 | (stats)) 234 | 235 | (defwindow music 236 | :monitor 0 237 | :geometry (geometry :x "13" 238 | :y "280" 239 | ; :width "10%" 240 | ; :height "10%" 241 | :anchor "top left") 242 | :windowtype "dock" 243 | :wm-ignore true 244 | (playerctl)) 245 | 246 | (defwindow theme_switcher 247 | :monitor 0 248 | :geometry (geometry :x "13" 249 | :y "80" 250 | ; :height "30%" 251 | ; :width "15%" 252 | :anchor "top left") 253 | :windowtype "dock" 254 | :wm-ignore true 255 | (theme_switcher)) 256 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/echoSongArt: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | s=$(playerctl status) 4 | 5 | if [[ $s == "Playing" ]]; then 6 | echo "$HOME/.cache/eww/spotify/temp.png" 7 | elif [[ $s == "Paused" ]]; then 8 | echo "$HOME/.cache/eww/spotify/temp.png" 9 | else 10 | echo "" 11 | fi 12 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/getCpu: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}' | tr '.' ' ' | awk '{print $1}' 4 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/getRam: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | printf "%.0f\n" $(free -m | grep Mem | awk '{print ($3/$2)*100}') 4 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/getSongArt: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | tmp_dir="$HOME/.cache/eww/spotify" 4 | tmp_cover_path=$tmp_dir/cover.png 5 | tmp_temp_path=$tmp_dir/temp.png 6 | 7 | if [ ! -d $tmp_dir ]; then 8 | mkdir -p $tmp_dir 9 | fi 10 | 11 | artlink="$(playerctl metadata mpris:artUrl)" 12 | 13 | if [ $(playerctl metadata mpris:artUrl) ]; then 14 | curl -s "$artlink" --output $tmp_temp_path 15 | else 16 | cp $HOME/.config/eww/assets/fallback.png $tmp_temp_path 17 | fi 18 | 19 | # an epic effekt 20 | # convert $tmp_temp_path -alpha set -channel A -evaluate multiply 0.3 $tmp_cover_path 21 | # convert $tmp_temp_path -gravity center +repage -alpha set -channel A \ 22 | # -sparse-color Barycentric '%[fx:w*2/32],0 opaque %[fx:w+0.5],0 transparent' \ 23 | # -evaluate multiply 0.5 \ 24 | # $tmp_cover_path 25 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/player.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | default() { 4 | player_status=$(playerctl status 2> /dev/null) 5 | 6 | if [ "$player_status" = "Playing" ]; then 7 | echo "$(playerctl metadata artist) - $(playerctl metadata title)" 8 | elif [ "$player_status" = "Paused" ]; then 9 | echo "$(playerctl metadata artist) - $(playerctl metadata title)" 10 | else 11 | echo "" 12 | fi 13 | } 14 | 15 | echoStatusIcon() { 16 | s=$(playerctl status) 17 | if [[ $s == "Playing" ]]; then 18 | echo " " 19 | else 20 | echo " " 21 | fi 22 | } 23 | 24 | getSongArt() { 25 | tmp_dir="$HOME/.cache/eww/spotify" 26 | tmp_cover_path=$tmp_dir/cover.png 27 | tmp_temp_path=$tmp_dir/temp.png 28 | 29 | if [ ! -d $tmp_dir ]; then 30 | mkdir -p $tmp_dir 31 | fi 32 | 33 | artlink="$(playerctl metadata mpris:artUrl)" 34 | 35 | if [ $(playerctl metadata mpris:artUrl) ]; then 36 | curl -s "$artlink" --output $tmp_temp_path 37 | else 38 | cp $HOME/.config/eww/assets/fallback.png $tmp_temp_path 39 | fi 40 | } 41 | 42 | echoSongArt() { 43 | s=$(playerctl status) 44 | if [[ $s == "Playing" ]]; then 45 | echo "$HOME/.cache/eww/spotify/temp.png" 46 | elif [[ $s == "Paused" ]]; then 47 | echo "$HOME/.cache/eww/spotify/temp.png" 48 | else 49 | echo "" 50 | fi 51 | } 52 | 53 | songTime() { 54 | s=$(playerctl status) 55 | if [[ $s == "Playing" ]]; then 56 | songTime=$(playerctl metadata --format "{{ duration(mpris:length) }}") 57 | echo "$songTime" 58 | else 59 | echo "" 60 | fi 61 | } 62 | 63 | songTimeRemaining() { 64 | s=$(playerctl status) 65 | if [[ $s == "Playing" ]]; then 66 | songTimeRemaining=$(playerctl metadata --format "{{ duration(position) }}") 67 | echo "$songTimeRemaining" 68 | else 69 | echo "" 70 | fi 71 | } 72 | 73 | 74 | if [[ "$1" == "--song_art" ]]; then 75 | echoSongArt 76 | elif [[ "$1" == "--get_song_art" ]]; then 77 | getSongArt 78 | elif [[ "$1" == "--status_icon" ]]; then 79 | echoStatusIcon 80 | elif [[ "$1" == "--song_name" ]]; then 81 | default 82 | elif [[ "$1" == "--song_time" ]]; then 83 | songTime 84 | elif [[ "$1" == "--song_time_remaining" ]]; then 85 | songTimeRemaining 86 | fi 87 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/playerStatus: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | s=$(playerctl status) 4 | 5 | if [[ $s == "Playing" ]]; then 6 | echo " " 7 | else 8 | echo " " 9 | fi 10 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/switch_theme: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FILE="$HOME/.cache/cached_theme" 4 | KITTY="$HOME/.config/bspwm/apps/kitty/kitty.conf" 5 | BAR="$HOME/.config/bspwm/apps/polybar/config.ini" 6 | GTK="$HOME/.xsettingsd" 7 | ROFI="$HOME/.config/bspwm/apps/rofi/config.rasi" 8 | NEOVIM="$HOME/.config/nvim/lua/user/colorscheme.lua" 9 | EWW="$HOME/.config/bspwm/apps/eww/theme_switcher/eww.scss" 10 | DUNST="$HOME/.config/bspwm/autostart.sh" 11 | JGMENU="$HOME/.config/bspwm/apps/jgmenu/run" 12 | 13 | if [[ ! -f "$FILE" ]]; then 14 | touch "$FILE" 15 | fi 16 | 17 | if grep -q "Dark" "$FILE"; then 18 | # DO LIGHT THEME HERE 19 | sed -i '/include/c\include ~\/.config\/bspwm\/apps\/kitty\/colors\/latte.conf' $KITTY 20 | sed -i '/include-file=~\/.config\/bspwm\/apps\/polybar\/colors/c\include-file=~\/.config\/bspwm\/apps\/polybar\/colors\/latte.ini' $BAR 21 | sed -i '/Net\/ThemeName/c\Net\/ThemeName "Catppuccin-Latte-Standard-Blue-Light"' $GTK 22 | sed -i '/@import "colors/c\@import "colors\/latte.rasi"' $ROFI 23 | sed -i '/flavour = "/c\flavour = "latte"' $NEOVIM 24 | sed -i "/@import 'colors\//c\@import 'colors\/latte';" $EWW 25 | sed -i "/dunst -config/c\dunst -config ~\/.config\/bspwm\/apps\/dunst\/latte-dunstrc &" $DUNST 26 | sed -i "/conf_file=/c\conf_file=\$base/latte-jgmenurc" $JGMENU 27 | killall jgmenu 28 | killall dunst 29 | killall xsettingsd 30 | xdotool key ctrl+shift+F5 31 | bspc wm -r 32 | notify-send "Switched to Catppuccin Latte!" 33 | echo "Light" > $FILE 34 | else 35 | sed -i '/include/c\include ~\/.config\/bspwm\/apps\/kitty\/colors\/mocha.conf' $KITTY 36 | sed -i '/include-file=~\/.config\/bspwm\/apps\/polybar\/colors/c\include-file=~\/.config\/bspwm\/apps\/polybar\/colors\/mocha.ini' $BAR 37 | sed -i '/Net\/ThemeName/c\Net\/ThemeName "Catppuccin-Mocha-Standard-Blue-Dark"' $GTK 38 | sed -i '/@import "colors/c\@import "colors\/mocha.rasi"' $ROFI 39 | sed -i '/flavour = "/c\flavour = "mocha"' $NEOVIM 40 | sed -i "/@import 'colors\//c\@import 'colors\/mocha';" $EWW 41 | sed -i "/dunst -config/c\dunst -config ~\/.config\/bspwm\/apps\/dunst\/mocha-dunstrc &" $DUNST 42 | sed -i "/conf_file=/c\conf_file=\$base/mocha-jgmenurc" $JGMENU 43 | killall jgmenu 44 | killall dunst 45 | killall xsettingsd 46 | xdotool key ctrl+shift+F5 47 | bspc wm -r 48 | notify-send "Switched to Catppuccin Mocha!" 49 | echo "Dark" > $FILE 50 | fi 51 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/volume.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # @requires: pactl 4 | 5 | SINK=$(pactl list short sinks | sed -e 's,^\([0-9][0-9]*\)[^0-9].*,\1,' | head -n 1) 6 | 7 | percentage () { 8 | local val=$(echo $1 | tr '%' ' ' | awk '{print $1}') 9 | } 10 | 11 | get_percentage () { 12 | local muted=$(pamixer --get-volume-human) 13 | if [[ $muted == 'muted' ]]; then 14 | echo 0% 15 | else 16 | per=$(pactl list sinks | grep '^[[:space:]]Volume:' | head -n $(( $SINK + 1 )) | tail -n 1 | sed -e 's,.* \([0-9][0-9]*\)%.*,\1,') 17 | echo "${per}%" 18 | fi 19 | } 20 | 21 | get_icon () { 22 | local vol=$(get_percentage) 23 | if [[ $vol == "0%" ]]; then 24 | echo "~/.config/bspwm/apps/eww/theme_switcher/assets/mute.jpg" 25 | else 26 | echo "~/.config/bspwm/apps/eww/theme_switcher/assets/volume.jpg" 27 | fi 28 | } 29 | 30 | get_vol () { 31 | local percent=$(get_percentage) 32 | echo $percent | tr -d '%' 33 | } 34 | 35 | if [[ $1 == "--icon" ]]; then 36 | get_icon 37 | fi 38 | 39 | if [[ $1 == "--percentage" ]]; then 40 | get_percentage 41 | fi 42 | 43 | if [[ $1 == "--vol" ]]; then 44 | get_vol 45 | fi 46 | 47 | if [[ $1 == "--toggle-muted" ]]; then 48 | pamixer -t 49 | fi 50 | 51 | if [[ $1 == "set" ]]; then 52 | val=$(echo $2 | tr '.' ' ' | awk '{print $1}') 53 | if test $val -gt 100; then 54 | val=100 55 | fi 56 | pactl set-sink-volume $SINK $val% 57 | fi 58 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww/theme_switcher/scripts/watch_theme: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FILE=~/.cache/cached_theme 4 | 5 | if grep -q "Dark" "$FILE" 6 | then 7 | echo "Latte" 8 | else 9 | echo "Mocha" 10 | fi 11 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww_overhaul/colors/latte.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #eff1f5; 3 | $mantle: #e6e9ef; 4 | $crust: #dce0e8; 5 | 6 | $text: #4c4f69; 7 | $subtext0: #6c6f85; 8 | $subtext1: #5c5f77; 9 | 10 | $surface0: #ccd0da; 11 | $surface1: #bcc0cc; 12 | $surface2: #acb0be; 13 | 14 | $overlay0: #9ca0b0; 15 | $overlay1: #8c8fa1; 16 | $overlay2: #7c7f93; 17 | 18 | $blue: #1e66f5; 19 | $lavender: #7287fd; 20 | $sapphire: #209fb5; 21 | $sky: #04a5e5; 22 | $teal: #179299; 23 | $green: #40a02b; 24 | $yellow: #df8e1d; 25 | $peach: #fe640b; 26 | $maroon: #e64553; 27 | $red: #d20f39; 28 | $mauve: #8839ef; 29 | $pink: #ea76cb; 30 | $flamingo: #dd7878; 31 | $rosewater: #dc8a78; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww_overhaul/colors/mocha.scss: -------------------------------------------------------------------------------- 1 | // Variable Color's 2 | $base: #1e1e2e; 3 | $mantle: #181825; 4 | $crust: #11111b; 5 | 6 | $text: #cdd6f4; 7 | $subtext0: #a6adc8; 8 | $subtext1: #bac2de; 9 | 10 | $surface0: #313244; 11 | $surface1: #45475a; 12 | $surface2: #585b70; 13 | 14 | $overlay0: #6c7086; 15 | $overlay1: #7f849c; 16 | $overlay2: #9399b2; 17 | 18 | $blue: #89b4fa; 19 | $lavender: #b4befe; 20 | $sapphire: #74c7ec; 21 | $sky: #89dceb; 22 | $teal: #94e2d5; 23 | $green: #a6e3a1; 24 | $yellow: #f9e2af; 25 | $peach: #fab387; 26 | $maroon: #eba0ac; 27 | $red: #f38ba8; 28 | $mauve: #cba6f7; 29 | $pink: #f5c2e7; 30 | $flamingo: #f2cdcd; 31 | $rosewater: #f5e0dc; 32 | $transparent: #FF0000; 33 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww_overhaul/eww.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ohxxm/dotfiles/72f28463d1cf0fd0d102c570fbde890dcf9b0c7c/config/bspwm/apps/eww_overhaul/eww.scss -------------------------------------------------------------------------------- /config/bspwm/apps/eww_overhaul/eww.yuck: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ohxxm/dotfiles/72f28463d1cf0fd0d102c570fbde890dcf9b0c7c/config/bspwm/apps/eww_overhaul/eww.yuck -------------------------------------------------------------------------------- /config/bspwm/apps/eww_overhaul/scripts/switch_theme: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FILE="$HOME/.cache/cached_theme" 4 | KITTY="$HOME/.config/bspwm/apps/kitty/kitty.conf" 5 | BAR="$HOME/.config/bspwm/apps/polybar/config.ini" 6 | GTK="$HOME/.xsettingsd" 7 | ROFI="$HOME/.config/bspwm/apps/rofi/config.rasi" 8 | NEOVIM="$HOME/.config/nvim/lua/user/colorscheme.lua" 9 | EWW="$HOME/.config/bspwm/apps/eww/eww.scss" 10 | DUNST="$HOME/.config/bspwm/autostart.sh" 11 | JGMENU="$HOME/.config/bspwm/apps/jgmenu/run" 12 | 13 | if [[ ! -f "$FILE" ]]; then 14 | touch "$FILE" 15 | fi 16 | 17 | if grep -q "Dark" "$FILE"; then 18 | # DO LIGHT THEME HERE 19 | sed -i '/include/c\include ~\/.config\/bspwm\/apps\/kitty\/colors\/latte.conf' $KITTY 20 | sed -i '/include-file=~\/.config\/bspwm\/apps\/polybar\/colors/c\include-file=~\/.config\/bspwm\/apps\/polybar\/colors\/latte.ini' $BAR 21 | sed -i '/Net\/ThemeName/c\Net\/ThemeName "Catppuccin-Latte-Standard-Blue-Light"' $GTK 22 | sed -i '/@import "colors/c\@import "colors\/latte.rasi"' $ROFI 23 | sed -i '/flavour = "/c\flavour = "latte"' $NEOVIM 24 | sed -i "/@import 'colors\//c\@import 'colors\/latte';" $EWW 25 | sed -i "/dunst -config/c\dunst -config ~\/.config\/bspwm\/apps\/dunst\/latte-dunstrc &" $DUNST 26 | sed -i "/conf_file=/c\conf_file=\$base/latte-jgmenurc" $JGMENU 27 | killall jgmenu 28 | killall dunst 29 | killall xsettingsd 30 | xdotool key ctrl+shift+F5 31 | bspc wm -r 32 | notify-send "Switched to Catppuccin Latte!" 33 | echo "Light" > $FILE 34 | else 35 | sed -i '/include/c\include ~\/.config\/bspwm\/apps\/kitty\/colors\/mocha.conf' $KITTY 36 | sed -i '/include-file=~\/.config\/bspwm\/apps\/polybar\/colors/c\include-file=~\/.config\/bspwm\/apps\/polybar\/colors\/mocha.ini' $BAR 37 | sed -i '/Net\/ThemeName/c\Net\/ThemeName "Catppuccin-Mocha-Standard-Blue-Dark"' $GTK 38 | sed -i '/@import "colors/c\@import "colors\/mocha.rasi"' $ROFI 39 | sed -i '/flavour = "/c\flavour = "mocha"' $NEOVIM 40 | sed -i "/@import 'colors\//c\@import 'colors\/mocha';" $EWW 41 | sed -i "/dunst -config/c\dunst -config ~\/.config\/bspwm\/apps\/dunst\/mocha-dunstrc &" $DUNST 42 | sed -i "/conf_file=/c\conf_file=\$base/mocha-jgmenurc" $JGMENU 43 | killall jgmenu 44 | killall dunst 45 | killall xsettingsd 46 | xdotool key ctrl+shift+F5 47 | bspc wm -r 48 | notify-send "Switched to Catppuccin Mocha!" 49 | echo "Dark" > $FILE 50 | fi 51 | -------------------------------------------------------------------------------- /config/bspwm/apps/eww_overhaul/scripts/watch_theme: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FILE=~/.cache/cached_theme 4 | 5 | if grep -q "Dark" "$FILE" 6 | then 7 | echo "Latte" 8 | else 9 | echo "Mocha" 10 | fi 11 | -------------------------------------------------------------------------------- /config/bspwm/apps/fetch/conf: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | conf() { 4 | printf " 5 | (\ /) $(c 0 31) kr$(c 0 37) $(Kernel) 6 | ( · ·) $(c 0 34) os$(c 0 37) $(Os) 7 | c($(c 0 31)\"$(c 0 37))($(c 0 31)\"$(c 0 37)) $(c 0 33) wm$(c 0 37) $(Desktop) 8 | $(c 0 32) sh$(c 0 37) $(Shell) 9 | $(c 0 37) $(c 0 34) $(c 0 35) $(c 0 33) $(c 0 32) $(c 0 31) 10 | " 11 | } 12 | -------------------------------------------------------------------------------- /config/bspwm/apps/jgmenu/latte-jgmenurc: -------------------------------------------------------------------------------- 1 | stay_alive = 1 2 | tint2_look = 0 3 | position_mode = pointer 4 | terminal_exec = kitty 5 | terminal_args = -e 6 | sub_spacing = 5 7 | menu_width = 200 8 | menu_padding_top = 5 9 | menu_padding_right = 2 10 | menu_padding_bottom = 5 11 | menu_padding_left = 2 12 | menu_radius = 0 13 | menu_border = 0 14 | menu_halign = left 15 | sub_hover_action = 1 16 | item_margin_y = 5 17 | item_height = 30 18 | item_padding_x = 8 19 | item_radius = 6 20 | item_border = 0 21 | sep_height = 5 22 | font = Iosevka Nerd Font 15px 23 | icon_theme = zafiro 24 | icon_size = 24 25 | color_menu_bg = #eff1f5 100 26 | color_norm_fg = #4c4f69 100 27 | color_sel_bg = #ccd0da 100 28 | color_sel_fg = #1e66f5 100 29 | color_sep_fg = #4c4f69 40 30 | -------------------------------------------------------------------------------- /config/bspwm/apps/jgmenu/menu.txt: -------------------------------------------------------------------------------- 1 | Change Wallpaper,nitrogen,nitrogen 2 | Randomize Wallpaper,nitrogen --set-zoom-fill --save --random ~/walls_upscaled/,photo 3 | ^sep() 4 | 5 | Terminal,kitty --config ~/.config/bspwm/apps/kitty/kitty.conf,kitty 6 | Neovim,kitty --config ~/.config/bspwm/apps/kitty/kitty.conf -e nvim,nvim 7 | File Manager,nemo,nemo 8 | ^sep() 9 | 10 | Restart BSPWM,bspc wm -r,input-keyboard 11 | Restart SXHKD,killall sxhkd && bspc wm -r,input-keyboard 12 | 13 | Exit,^checkout(exit) 14 | 15 | ^tag(exit) 16 | Suspend,systemctl suspend,system-suspend 17 | Reboot,reboot,system-reboot 18 | Poweroff,poweroff,system-shutdown 19 | -------------------------------------------------------------------------------- /config/bspwm/apps/jgmenu/mocha-jgmenurc: -------------------------------------------------------------------------------- 1 | stay_alive = 1 2 | tint2_look = 0 3 | position_mode = pointer 4 | terminal_exec = kitty 5 | terminal_args = -e 6 | sub_spacing = 5 7 | menu_width = 200 8 | menu_padding_top = 5 9 | menu_padding_right = 2 10 | menu_padding_bottom = 5 11 | menu_padding_left = 2 12 | menu_radius = 0 13 | menu_border = 0 14 | menu_halign = left 15 | sub_hover_action = 1 16 | item_margin_y = 5 17 | item_height = 30 18 | item_padding_x = 8 19 | item_radius = 6 20 | item_border = 0 21 | sep_height = 5 22 | font = Iosevka Nerd Font 15px 23 | icon_theme = zafiro 24 | icon_size = 24 25 | color_menu_bg = #1e1e2e 100 26 | color_norm_fg = #cdd6f4 100 27 | color_sel_bg = #313244 100 28 | color_sel_fg = #89dceb 100 29 | color_sep_fg = #cdd6f4 40 30 | -------------------------------------------------------------------------------- /config/bspwm/apps/jgmenu/run: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | base=~/.config/bspwm/apps/jgmenu 4 | 5 | menu_file=$base/menu.txt 6 | conf_file=$base/mocha-jgmenurc 7 | 8 | killall jgmenu 9 | rm ~/.jgmenu-lockfile 10 | jgmenu --csv-file=$menu_file --config-file=$conf_file 11 | -------------------------------------------------------------------------------- /config/bspwm/apps/kitty/colors/latte.conf: -------------------------------------------------------------------------------- 1 | # vim:ft=kitty 2 | 3 | ## name: Catppuccin Kitty Latte 4 | ## author: Catppuccin Org 5 | ## license: MIT 6 | ## upstream: https://github.com/catppuccin/kitty/blob/main/latte.conf 7 | ## blurb: Soothing pastel theme for the high-spirited! 8 | 9 | 10 | 11 | # The basic colors 12 | foreground #4C4F69 13 | background #EFF1F5 14 | selection_foreground #EFF1F5 15 | selection_background #DC8A78 16 | 17 | # Cursor colors 18 | cursor #DC8A78 19 | cursor_text_color #EFF1F5 20 | 21 | # URL underline color when hovering with mouse 22 | url_color #DC8A78 23 | 24 | # Kitty window border colors 25 | active_border_color #7287FD 26 | inactive_border_color #9CA0B0 27 | bell_border_color #DF8E1D 28 | 29 | # OS Window titlebar colors 30 | wayland_titlebar_color system 31 | macos_titlebar_color system 32 | 33 | # Tab bar colors 34 | active_tab_foreground #EFF1F5 35 | active_tab_background #8839EF 36 | inactive_tab_foreground #4C4F69 37 | inactive_tab_background #9CA0B0 38 | tab_bar_background #BCC0CC 39 | 40 | # Colors for marks (marked text in the terminal) 41 | mark1_foreground #EFF1F5 42 | mark1_background #7287fD 43 | mark2_foreground #EFF1F5 44 | mark2_background #8839EF 45 | mark3_foreground #EFF1F5 46 | mark3_background #209FB5 47 | 48 | # The 16 terminal colors 49 | 50 | # black 51 | color0 #5C5F77 52 | color8 #6C6F85 53 | 54 | # red 55 | color1 #D20F39 56 | color9 #D20F39 57 | 58 | # green 59 | color2 #40A02B 60 | color10 #40A02B 61 | 62 | # yellow 63 | color3 #DF8E1D 64 | color11 #DF8E1D 65 | 66 | # blue 67 | color4 #1E66F5 68 | color12 #1E66F5 69 | 70 | # magenta 71 | color5 #EA76CB 72 | color13 #EA76CB 73 | 74 | # cyan 75 | color6 #179299 76 | color14 #179299 77 | 78 | # white 79 | color7 #ACB0BE 80 | color15 #BCC0CC 81 | -------------------------------------------------------------------------------- /config/bspwm/apps/kitty/colors/mocha.conf: -------------------------------------------------------------------------------- 1 | # vim:ft=kitty 2 | 3 | ## name: Catppuccin Kitty Mocha 4 | ## author: Catppuccin Org 5 | ## license: MIT 6 | ## upstream: https://github.com/catppuccin/kitty/blob/main/mocha.conf 7 | ## blurb: Soothing pastel theme for the high-spirited! 8 | 9 | 10 | 11 | # The basic colors 12 | foreground #CDD6F4 13 | background #1E1E2E 14 | selection_foreground #1E1E2E 15 | selection_background #F5E0DC 16 | 17 | # Cursor colors 18 | cursor #F5E0DC 19 | cursor_text_color #1E1E2E 20 | 21 | # URL underline color when hovering with mouse 22 | url_color #F5E0DC 23 | 24 | # Kitty window border colors 25 | active_border_color #B4BEFE 26 | inactive_border_color #6C7086 27 | bell_border_color #F9E2AF 28 | 29 | # OS Window titlebar colors 30 | wayland_titlebar_color system 31 | macos_titlebar_color system 32 | 33 | # Tab bar colors 34 | active_tab_foreground #11111B 35 | active_tab_background #CBA6F7 36 | inactive_tab_foreground #CDD6F4 37 | inactive_tab_background #181825 38 | tab_bar_background #11111B 39 | 40 | # Colors for marks (marked text in the terminal) 41 | mark1_foreground #1E1E2E 42 | mark1_background #B4BEFE 43 | mark2_foreground #1E1E2E 44 | mark2_background #CBA6F7 45 | mark3_foreground #1E1E2E 46 | mark3_background #74C7EC 47 | 48 | # The 16 terminal colors 49 | 50 | # black 51 | color0 #45475A 52 | color8 #585B70 53 | 54 | # red 55 | color1 #F38BA8 56 | color9 #F38BA8 57 | 58 | # green 59 | color2 #A6E3A1 60 | color10 #A6E3A1 61 | 62 | # yellow 63 | color3 #F9E2AF 64 | color11 #F9E2AF 65 | 66 | # blue 67 | color4 #89B4FA 68 | color12 #89B4FA 69 | 70 | # magenta 71 | color5 #F5C2E7 72 | color13 #F5C2E7 73 | 74 | # cyan 75 | color6 #94E2D5 76 | color14 #94E2D5 77 | 78 | # white 79 | color7 #BAC2DE 80 | color15 #A6ADC8 81 | -------------------------------------------------------------------------------- /config/bspwm/apps/kitty/colors/rose-pine.conf: -------------------------------------------------------------------------------- 1 | ## name: Rosé Pine 2 | ## author: mvllow 3 | ## license: MIT 4 | ## upstream: https://github.com/rose-pine/kitty/blob/main/dist/rose-pine.conf 5 | ## blurb: All natural pine, faux fur and a bit of soho vibes for the classy minimalist 6 | 7 | foreground #e0def4 8 | background #191724 9 | selection_foreground #e0def4 10 | selection_background #403d52 11 | 12 | cursor #524f67 13 | cursor_text_color #e0def4 14 | 15 | url_color #c4a7e7 16 | 17 | active_tab_foreground #e0def4 18 | active_tab_background #26233a 19 | inactive_tab_foreground #6e6a86 20 | inactive_tab_background #191724 21 | 22 | # black 23 | color0 #26233a 24 | color8 #6e6a86 25 | 26 | # red 27 | color1 #eb6f92 28 | color9 #eb6f92 29 | 30 | # green 31 | color2 #31748f 32 | color10 #31748f 33 | 34 | # yellow 35 | color3 #f6c177 36 | color11 #f6c177 37 | 38 | # blue 39 | color4 #9ccfd8 40 | color12 #9ccfd8 41 | 42 | # magenta 43 | color5 #c4a7e7 44 | color13 #c4a7e7 45 | 46 | # cyan 47 | color6 #ebbcba 48 | color14 #ebbcba 49 | 50 | # white 51 | color7 #e0def4 52 | color15 #e0def4 53 | -------------------------------------------------------------------------------- /config/bspwm/apps/kitty/kitty.conf: -------------------------------------------------------------------------------- 1 | include ~/.config/bspwm/apps/kitty/colors/mocha.conf 2 | 3 | font_family Iosevka Term Nerd Font Complete Medium Italic 4 | font_size 15 5 | 6 | confirm_os_window_close 0 7 | 8 | window_margin_width 20 9 | -------------------------------------------------------------------------------- /config/bspwm/apps/picom/picom.conf: -------------------------------------------------------------------------------- 1 | # _ 2 | # ____ (_)________ ____ ___ 3 | # / __ \/ / ___/ __ \/ __ `__ \ 4 | # / /_/ / / /__/ /_/ / / / / / / 5 | # / .___/_/\___/\____/_/ /_/ /_/ 6 | # /_/ 7 | # 8 | 9 | ################################# 10 | # Shadows # 11 | ################################# 12 | 13 | shadow = true; 14 | 15 | shadow-radius = 20; 16 | shadow-offset-x = -20; 17 | shadow-offset-y = -18; 18 | 19 | shadow-exclude = [ 20 | "name = 'Notification'", 21 | "class_g = 'Conky'", 22 | "class_g ?= 'Notify-osd'", 23 | "class_g = 'Cairo-clock'", 24 | "class_g = 'firefox'", 25 | "class_g = 'Plank'", 26 | "class_g = 'Peek'", 27 | "class_g = 'Blender'", 28 | "class_g = 'eww-taskbar'", 29 | "_GTK_FRAME_EXTENTS@:c" 30 | ]; 31 | 32 | ################################# 33 | # Fading # 34 | ################################# 35 | 36 | fading = true; 37 | 38 | fade-in-step = 0.03; 39 | fade-out-step = 0.03; 40 | 41 | fade-exclude = [ 42 | "class_g = 'slop'", 43 | "class_g = 'jgmenu'", 44 | ]; 45 | 46 | no-fading-openclose = false; 47 | 48 | no-fading-destroyed-argb = true; 49 | 50 | ################################# 51 | # Transparency / Opacity # 52 | ################################# 53 | 54 | inactive-opacity-override = false; 55 | 56 | active-opacity = 1.0; 57 | 58 | focus-exclude = [ 59 | "class_g = 'Cairo-clock'", 60 | "class_g = 'Bar'", 61 | "class_g = 'slop'", 62 | ]; 63 | 64 | opacity-rule = [ 65 | "80:class_g = 'Bar'", 66 | "90:class_g = 'slop'", 67 | "90:class_g = 'Alacritty'", 68 | "100:class_g = 'kitty'", 69 | "100:class_g = 'Polybar'", 70 | "100:class_g = 'firefox'", 71 | "100:class_g = 'dmenu'", 72 | ]; 73 | 74 | ################################# 75 | # Background-Blurring # 76 | ################################# 77 | # 78 | blur-background = false; 79 | 80 | blur-kern="3x3box"; 81 | 82 | blur-background-exclude = [ 83 | "window_type = 'dock'", 84 | "class_g = 'slop'", 85 | "_GTK_FRAME_EXTENTS@:c" 86 | ]; 87 | 88 | ################################# 89 | # General Settings # 90 | ################################# 91 | 92 | daemon = true; 93 | 94 | backend = "glx"; 95 | 96 | corner-radius = 12; 97 | round-borders = 1; 98 | rounded-corners-exclude = [ 99 | # "class_g = 'Polybar'", 100 | "class_g = 'i3lock'", 101 | "class_g = 'Screenkey'", 102 | "class_g = 'eww-taskbar'", 103 | "class_g = 'eww-calendar_win'", 104 | # "class_g = 'awesome'", 105 | ] 106 | 107 | vsync = true; 108 | 109 | mark-wmwin-focused = true; 110 | mark-ovredir-focused = true; 111 | 112 | detect-rounded-corners = true; 113 | detect-client-opacity = true; 114 | 115 | refresh-rate = 165; 116 | 117 | detect-transient = true; 118 | detect-client-leader = true; 119 | 120 | use-damage = false; 121 | 122 | force-win-blend = true; 123 | 124 | log-level = "warn"; 125 | 126 | # Set the log file. 127 | # If *--log-file* is never specified, logs will be written to stderr. 128 | # Otherwise, logs will to written to the given file, though some of the early 129 | # logs might still be written to the stderr. 130 | # When setting this option from the config file, it is recommended to use an absolute path. 131 | # 132 | # log-file = '/path/to/your/log/file' 133 | 134 | wintypes: 135 | { 136 | tooltip = { fade = true; shadow = false; opacity = 1.0; focus = true; full-shadow = false; }; 137 | dock = { shadow = false; opacity = 1.0; full-shadow = false; } 138 | dnd = { shadow = false; } 139 | popup_menu = { opacity = 1.0; } 140 | dropdown_menu = { opacity = 1.0; } 141 | }; 142 | 143 | ################################# 144 | # Animations # 145 | ################################# 146 | 147 | animations: true; 148 | 149 | animation-stiffness = 300; 150 | animation-window-mass = 1.3; 151 | animation-dampening = 40; 152 | animation-clamping = true; 153 | 154 | animation-for-open-window = "zoom"; #open window 155 | animation-for-unmap-window = "zoom"; #minimize window 156 | animation-for-menu-window = "zoom"; 157 | animation-for-transient-window = "zoom"; #popup windows 158 | 159 | animation-for-workspace-switch-in = "zoom"; #the windows in the workspace that is coming in 160 | animation-for-workspace-switch-out = "zoom"; #the windows in the workspace that are coming out 161 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/.config.ini: -------------------------------------------------------------------------------- 1 | [colors] 2 | background = #302D41 3 | foreground = #D9E0EE 4 | back = #1E1E2E 5 | 6 | [bar/top] 7 | width = 100% 8 | height = 28 9 | radius = 0.0 10 | fixed-center = true 11 | 12 | border-size = 8 13 | border-color = ${colors.back} 14 | 15 | bottom = true 16 | 17 | foreground = #D9E0EE 18 | background = #1E1E2E 19 | 20 | padding-left = 1 21 | padding-right = 1 22 | module-margin-left = 0 23 | module-margin-right = 0 24 | 25 | modules-left = left i3 right 26 | modules-center = left xwindow right 27 | modules-right = left date right 28 | 29 | override-redirect = true 30 | wm-restack = i3 31 | enable-ipc = true 32 | 33 | cursor-click = pointer 34 | cursor-scroll = ns-resize 35 | 36 | font-0 = "JetBrainsMono Nerd Font:size=10;3" 37 | font-1 = "SauceCodePro Nerd Font Mono:size=20;5" 38 | font-2 = "Material Icons:pixelsize=15;5" 39 | font-3 = "Sinji:pixelsize=15;5" 40 | font-4 = "Togalite medium:pixelsize=11;2" 41 | font-5 = "SauceCodePro Nerd Font Mono:size=16;5" 42 | font-6 = "JetBrainsMono Nerd Font Mono:size=12;4" 43 | font-7 = "JetBrainsMono Nerd Font:pixelsize=12;4" 44 | 45 | pseudo-transparency = true 46 | 47 | wm-name = i3 48 | 49 | #tray 50 | tray-position = right 51 | 52 | ; If true, the bar will not shift its 53 | ; contents when the tray changes 54 | tray-detached = false 55 | 56 | ; Tray icon max size 57 | tray-maxsize = 16 58 | 59 | tray-scale = 1.0 60 | 61 | 62 | [module/left] 63 | type = custom/text 64 | content-foreground = ${colors.background} 65 | content = "" 66 | content-font = 2 67 | 68 | [module/right] 69 | type = custom/text 70 | content-foreground = ${colors.background} 71 | content = "" 72 | content-font = 2 73 | 74 | [module/xwindow] 75 | type = internal/xwindow 76 | label = %title:0:30:..% 77 | label-background = ${colors.background} 78 | 79 | 80 | [module/date] 81 | type = internal/date 82 | interval = 5 83 | 84 | date = 85 | date-alt = "%A %m/%d/%y" 86 | 87 | time = "%OI:%M %p" 88 | time-alt = "| %OI:%M %p" 89 | 90 | label = %date% %time% 91 | label-background = ${colors.background} 92 | 93 | 94 | [module/i3] 95 | type = internal/i3 96 | pin-workspaces = true 97 | strip-wsnumbers = true 98 | index-sort = true 99 | enable-click = true 100 | enable-scroll = true 101 | wrapping-scroll = true 102 | reverse-scroll = true 103 | fuzzy-match = true 104 | 105 | ws-icon-0 = "0;0 " 106 | ws-icon-1 = "1;1 " 107 | ws-icon-2 = "2;2 " 108 | ws-icon-3 = "3;3 " 109 | ws-icon-4 = "4;4 " 110 | ws-icon-5 = "5;5 " 111 | ws-icon-6 = "6;6 " 112 | ws-icon-7 = "7;7 " 113 | ws-icon-8 = "8;8 " 114 | ws-icon-9 = "9;9 " 115 | 116 | format = 117 | 118 | label-focused = %index% 119 | label-focused-foreground = #131020 120 | label-focused-background = #96cdfb 121 | label-focused-padding = 2 122 | 123 | label-unfocused = ${self.label-focused} 124 | label-unfocused-background = ${colors.background} 125 | label-unfocused-foreground = #ffffff 126 | label-unfocused-padding = 2 127 | 128 | label-urgent = ${self.label-focused} 129 | label-urgent-foreground = ${colors.background} 130 | label-urgent-background = #F28FAD 131 | label-urgent-padding = 2 132 | 133 | 134 | [settings] 135 | screenchange-reload = true 136 | 137 | [global/wm] 138 | margin-bottom = 0 139 | margin-top = 0 140 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/colors.ini: -------------------------------------------------------------------------------- 1 | ; [colors] 2 | ; background = #1d1d2d 3 | ; background-alt = #11111b 4 | ; foreground = #cdd6f4 5 | ; primary = #89dceb 6 | ; secondary = #74c7ec 7 | ; alert = #f38ba8 8 | ; black = #24283b 9 | ; cyan = #89dceb 10 | ; green = #a6e3a1 11 | ; orange = #fab387 12 | ; yellow = #f9e2af 13 | ; red = #f38ba8 14 | ; pink = #f5c2e7 15 | ; blue = #89b4fa 16 | 17 | ;------------------------- 18 | ; Catppuccin Mocha Palette 19 | ; Maintainer: justTOBBI 20 | ;-------------------------- 21 | 22 | [colors] 23 | base = #1e1e2e 24 | mantle = #181825 25 | crust = #11111b 26 | 27 | text = #cdd6f4 28 | subtext0 = #a6adc8 29 | subtext1 = #bac2de 30 | 31 | surface0 = #313244 32 | surface1 = #45475a 33 | surface2 = #585b70 34 | 35 | overlay0 = #6c7086 36 | overlay1 = #7f849c 37 | overlay2 = #9399b2 38 | 39 | 40 | blue = #89b4fa 41 | lavender = #b4befe 42 | sapphire = #74c7ec 43 | sky = #89dceb 44 | teal = #94e2d5 45 | green = #a6e3a1 46 | yellow = #f9e2af 47 | peach = #fab387 48 | maroon = #eba0ac 49 | red = #f38ba8 50 | mauve = #cba6f7 51 | pink = #f5c2e7 52 | flamingo = #f2cdcd 53 | rosewater = #f5e0dc 54 | 55 | transparent = #FF00000 56 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/dark-decay.ini: -------------------------------------------------------------------------------- 1 | [colors] 2 | base = #101419 3 | mantle = #15191e 4 | crust = #1a1e23 5 | 6 | text = #b6beca 7 | subtext0 = #dee1e6 8 | subtext1 = #dee1e6 9 | 10 | surface0 = #1a1e23 11 | 12 | blue = #70a5eb 13 | green = #78dba9 14 | yellow = #f1cf8a 15 | mauve = #c68aee 16 | red = #e05f65 17 | peach = #e9a180 18 | pink = #cb8ff3 19 | sky = #74bee9 20 | 21 | transparent = #FF00000 22 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/decay.ini: -------------------------------------------------------------------------------- 1 | [colors] 2 | base = #171B20 3 | mantle = #1a1e24 4 | crust = #1f2329 5 | 6 | text = #b6beca 7 | subtext0 = #e3e6eb 8 | subtext1 = #e3e6eb 9 | 10 | surface0 = #1f2329 11 | 12 | blue = #70a5eb 13 | green = #78dba9 14 | yellow = #f1cf8a 15 | mauve = #c68aee 16 | red = #e05f65 17 | peach = #e9a180 18 | pink = #cb8ff3 19 | sky = #74bee9 20 | 21 | transparent = #FF00000 22 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/decayce.ini: -------------------------------------------------------------------------------- 1 | [colors] 2 | base = #0d0f18 3 | mantle = #151720 4 | crust = #1c1e27 5 | 6 | text = #a5b6c4 7 | subtext0 = #d0d3d8 8 | subtext1 = #d0d3d8 9 | 10 | surface0 = #1a1c25 11 | 12 | blue = #86aaec 13 | green = #95d3af 14 | yellow = #f1d8a5 15 | mauve = #c79bf0 16 | red = #e26c7c 17 | peach = #fab387 18 | pink = #c79bf0 19 | sky = #86aaec 20 | 21 | transparent = #FF00000 22 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/frappe.ini: -------------------------------------------------------------------------------- 1 | ;------------------------- 2 | ; Catppuccin Frappé Palette 3 | ; Maintainer: justTOBBI 4 | ;-------------------------- 5 | 6 | [colors] 7 | base = #303446 8 | mantle = #292c3c 9 | crust = #232634 10 | 11 | text = #c6d0f5 12 | subtext0 = #a5adce 13 | subtext1 = #b5bfe2 14 | 15 | surface0 = #414559 16 | surface1 = #51576d 17 | surface2 = #626880 18 | 19 | overlay0 = #737994 20 | overlay1 = #838ba7 21 | overlay2 = #949cbb 22 | 23 | 24 | blue = #8caaee 25 | lavender = #babbf1 26 | sapphire = #85c1dc 27 | sky = #99d1db 28 | teal = #81c8be 29 | green = #a6d189 30 | yellow = #e5c890 31 | peach = #ef9f76 32 | maroon = #ea999c 33 | red = #e78284 34 | mauve = #ca9ee6 35 | pink = #f4b8e4 36 | flamingo = #eebebe 37 | rosewater = #f2d5cf 38 | 39 | transparent = #FF00000 40 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/latte.ini: -------------------------------------------------------------------------------- 1 | ;------------------------- 2 | ; Catppuccin Latte Palette 3 | ; Maintainer: justTOBBI 4 | ;-------------------------- 5 | 6 | [colors] 7 | base = #eff1f5 8 | mantle = #e6e9ef 9 | crust = #dce0e8 10 | 11 | text = #4c4f69 12 | subtext0 = #6c6f85 13 | subtext1 = #5c5f77 14 | 15 | surface0 = #ccd0da 16 | surface1 = #bcc0cc 17 | surface2 = #acb0be 18 | 19 | overlay0 = #9ca0b0 20 | overlay1 = #8c8fa1 21 | overlay2 = #7c7f93 22 | 23 | 24 | blue = #1e66f5 25 | lavender = #7287fd 26 | sapphire = #209fb5 27 | sky = #04a5e5 28 | teal = #179299 29 | green = #40a02b 30 | yellow = #df8e1d 31 | peach = #fe640b 32 | maroon = #e64553 33 | red = #d20f39 34 | mauve = #8839ef 35 | pink = #ea76cb 36 | flamingo = #dd7878 37 | rosewater = #dc8a78 38 | 39 | transparent = #FF00000 40 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/light-decay.ini: -------------------------------------------------------------------------------- 1 | [colors] 2 | base = #dee1e6 3 | mantle = #d9dce1 4 | crust = #d4d7dc 5 | 6 | text = #101419 7 | subtext0 = #1f2328 8 | subtext1 = #1f2328 9 | 10 | surface0 = #d4d7dc 11 | 12 | blue = #4d82c8 13 | green = #69b373 14 | yellow = #ceac67 15 | mauve = #a367cb 16 | red = #bd3c42 17 | peach = #e9a180 18 | pink = #a86cd0 19 | sky = #519bc6 20 | 21 | transparent = #FF00000 22 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/macchiato.ini: -------------------------------------------------------------------------------- 1 | ;------------------------- 2 | ; Catppuccin Macchiato Palette 3 | ; Maintainer: justTOBBI 4 | ;-------------------------- 5 | 6 | [colors] 7 | base = #24273a 8 | mantle = #1e2030 9 | crust = #181926 10 | 11 | text = #cad3f5 12 | subtext0 = #a5adcb 13 | subtext1 = #b8c0e0 14 | 15 | surface0 = #363a4f 16 | surface1 = #494d64 17 | surface2 = #5b6078 18 | 19 | overlay0 = #6e738d 20 | overlay1 = #8087a2 21 | overlay2 = #939ab7 22 | 23 | 24 | blue = #8aadf4 25 | lavender = #b7bdf8 26 | sapphire = #7dc4e4 27 | sky = #91d7e3 28 | teal = #8bd5ca 29 | green = #a6da95 30 | yellow = #eed49f 31 | peach = #f5a97f 32 | maroon = #ee99a0 33 | red = #ed8796 34 | mauve = #c6a0f6 35 | pink = #f5bde6 36 | flamingo = #f0c6c6 37 | rosewater = #f4dbd6 38 | 39 | transparent = #FF00000 40 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/colors/mocha.ini: -------------------------------------------------------------------------------- 1 | ; [colors] 2 | ; background = #1d1d2d 3 | ; background-alt = #11111b 4 | ; foreground = #cdd6f4 5 | ; primary = #89dceb 6 | ; secondary = #74c7ec 7 | ; alert = #f38ba8 8 | ; black = #24283b 9 | ; cyan = #89dceb 10 | ; green = #a6e3a1 11 | ; orange = #fab387 12 | ; yellow = #f9e2af 13 | ; red = #f38ba8 14 | ; pink = #f5c2e7 15 | ; blue = #89b4fa 16 | 17 | ;------------------------- 18 | ; Catppuccin Mocha Palette 19 | ; Maintainer: justTOBBI 20 | ;-------------------------- 21 | 22 | [colors] 23 | base = #1e1e2e 24 | mantle = #181825 25 | crust = #11111b 26 | 27 | text = #cdd6f4 28 | subtext0 = #a6adc8 29 | subtext1 = #bac2de 30 | 31 | surface0 = #313244 32 | surface1 = #45475a 33 | surface2 = #585b70 34 | 35 | overlay0 = #6c7086 36 | overlay1 = #7f849c 37 | overlay2 = #9399b2 38 | 39 | 40 | blue = #89b4fa 41 | lavender = #b4befe 42 | sapphire = #74c7ec 43 | sky = #89dceb 44 | teal = #94e2d5 45 | green = #a6e3a1 46 | yellow = #f9e2af 47 | peach = #fab387 48 | maroon = #eba0ac 49 | red = #f38ba8 50 | mauve = #cba6f7 51 | pink = #f5c2e7 52 | flamingo = #f2cdcd 53 | rosewater = #f5e0dc 54 | 55 | transparent = #FF00000 56 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/config.ini: -------------------------------------------------------------------------------- 1 | ; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ 2 | ; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ 3 | ; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ 4 | ; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ 5 | ; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ 6 | ; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ 7 | 8 | 9 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 10 | 11 | [bar/mainbar] 12 | width = 99% 13 | ; width = 100% 14 | height = 40 15 | radius = 0 16 | fixed-center = true 17 | 18 | border-size = 10 19 | border-color = ${colors.base} 20 | 21 | background = ${colors.base} 22 | foreground = ${colors.text} 23 | 24 | padding-left = 1 25 | padding-right = 1 26 | 27 | module-margin-left = 0 28 | module-margin-right = 0 29 | 30 | font-0 = "JetBrainsMono Nerd Font:size=15;5" 31 | font-1 = "SauceCodePro Nerd Font Mono:size=28;7" 32 | font-2 = "Material Design Icons:pixelsize=15;5" 33 | font-3 = "Sinji:pixelsize=15;5" 34 | font-4 = "Togalite medium:pixelsize=11;2" 35 | font-5 = "SauceCodePro Nerd Font Mono:size=16;5" 36 | font-6 = "JetBrainsMono Nerd Font Mono:size=12;4" 37 | font-7 = "JetBrainsMono Nerd Font:pixelsize=12;4" 38 | font-8 = "JetBrainsMono Nerd Font:pixelsize=20;5" 39 | font-9 = "Iosevka Nerd Font:style=Bold:pixelsize=30;7" 40 | 41 | ; MODULES SETUP 42 | modules-left = appmenu sep vertical-dots sep left1 windowtitle left2 43 | ; modules-center = left1 spotify-artist spotify-track 44 | modules-center = left1 bspwm left2 45 | modules-right = right1 sep1 memory sep1 dot1 sep1 pacman-updates sep1 dot1 sep1 cpu sep1 right2 sep dot sep right1 date right2 46 | 47 | cursor-click = pointer 48 | cursor-scroll = pointer 49 | 50 | line-size = 2 51 | 52 | wm-name = bspwm 53 | override-redirect = false 54 | wm-restack = bspwm 55 | enable-ipc = true 56 | 57 | ; offset-y = 1% 58 | offset-y = 0.5% 59 | offset-x = 0.5% 60 | 61 | ;separator = %{F#4C566A}|%{F-} 62 | ; label-separator = | 63 | 64 | [settings] 65 | include-file = ~/.config/bspwm/apps/polybar/modules/modules.ini 66 | include-file=~/.config/bspwm/apps/polybar/colors/mocha.ini 67 | screenchange-reload = true 68 | ;compositing-background = xor 69 | ;compositing-background = screen 70 | ;compositing-foreground = source 71 | ;compositing-border = over 72 | pseudo-transparency = false 73 | 74 | [global/wm] 75 | margin-bottom = 0 76 | margin-top = 0 77 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/launch.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | killall polybar 4 | polybar -c $HOME/.config/bspwm/apps/polybar/config.ini & 5 | -------------------------------------------------------------------------------- /config/bspwm/apps/polybar/modules/modules.ini: -------------------------------------------------------------------------------- 1 | [module/player] 2 | type = custom/script 3 | exec = ~/.config/bspwm/apps/polybar/scripts/player.sh 4 | interval = 0 5 | click-left = playerctl previous & 6 | click-right = playerctl next & 7 | click-middle = playerctl play-pause & 8 | 9 | label =  %output% 10 | label-maxlen = 35 11 | format =