├── 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 =