├── Dot files ├── 7qv8o8lg1ph71.png ├── Bspwm │ ├── ... │ ├── Rofi-custom │ │ ├── fancy.rasi │ │ └── mask.rasi │ ├── Spicietify-customcolor │ │ └── Sleek │ │ │ ├── README.md │ │ │ ├── bladerunner.png │ │ │ ├── cherry.png │ │ │ ├── color.ini │ │ │ ├── coral.png │ │ │ ├── deep.png │ │ │ ├── deeper.png │ │ │ ├── dracula.png │ │ │ ├── elementary.png │ │ │ ├── futura.png │ │ │ ├── nord.png │ │ │ ├── psycho.png │ │ │ ├── ultrablack.png │ │ │ ├── user.css │ │ │ ├── vantablack.png │ │ │ └── wealthy.png │ ├── alacritty │ │ ├── alacritty-master.zip │ │ ├── alacritty-master │ │ │ ├── INSTALL.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── dracula.yml │ │ │ └── screenshot.png │ │ ├── alacritty.yml │ │ └── bal │ │ │ └── example │ │ │ └── alacritty.yml │ ├── bspwm │ │ └── bspwmrc │ ├── dunst │ │ ├── dunstrc │ │ ├── notify-send.sh │ │ └── volume.sh │ ├── eww │ │ ├── assets │ │ │ ├── fallback.png │ │ │ └── profile.png │ │ ├── eww.scss │ │ ├── eww.yuck │ │ ├── images │ │ │ ├── bg.png │ │ │ ├── icons │ │ │ │ ├── code.svg │ │ │ │ ├── discord.svg │ │ │ │ ├── files.svg │ │ │ │ ├── firefox.svg │ │ │ │ ├── geany.svg │ │ │ │ ├── gimp.svg │ │ │ │ ├── telegram.svg │ │ │ │ ├── terminal.svg │ │ │ │ └── virtualbox.svg │ │ │ ├── image.png │ │ │ ├── music.png │ │ │ ├── pengus-hi.png │ │ │ └── profile.jpg │ │ ├── launch_dashboard │ │ ├── scripts │ │ │ ├── check-todo │ │ │ ├── echoart │ │ │ ├── echotitle │ │ │ ├── getSongDuration │ │ │ ├── getart │ │ │ ├── getartist │ │ │ ├── getbri │ │ │ ├── getday │ │ │ ├── getposition │ │ │ ├── getquotes │ │ │ ├── getram │ │ │ ├── gettitle │ │ │ ├── getvol │ │ │ ├── getvpnstat │ │ │ ├── getweather │ │ │ ├── getwethquote │ │ │ ├── getwethquote2 │ │ │ ├── home-dir │ │ │ │ ├── l1 │ │ │ │ ├── l1-processed │ │ │ │ ├── l2 │ │ │ │ ├── l2-processed │ │ │ │ ├── l3 │ │ │ │ ├── l3-processed │ │ │ │ ├── l4 │ │ │ │ ├── l4-processed │ │ │ │ ├── l5 │ │ │ │ ├── l5-processed │ │ │ │ ├── l6 │ │ │ │ └── l6-processed │ │ │ ├── lockscreen.sh │ │ │ ├── logout.sh │ │ │ ├── msclip.sh │ │ │ ├── music │ │ │ ├── open_apps │ │ │ ├── powermenu.sh │ │ │ ├── quote-trimmer │ │ │ ├── quotes │ │ │ ├── quotes.json │ │ │ ├── reboot.sh │ │ │ ├── shutdown.sh │ │ │ ├── spotifystatus │ │ │ ├── suspend.sh │ │ │ ├── sys_info │ │ │ ├── task │ │ │ ├── vpntoggle │ │ │ └── weather-trimmer │ │ └── src │ │ │ ├── scss │ │ │ ├── index.scss │ │ │ ├── variables.scss │ │ │ └── widgets │ │ │ │ ├── applications.scss │ │ │ │ ├── clock.scss │ │ │ │ ├── music.scss │ │ │ │ ├── profile.scss │ │ │ │ ├── quote.scss │ │ │ │ ├── systray.scss │ │ │ │ ├── task.scss │ │ │ │ └── weather.scss │ │ │ └── yuck │ │ │ ├── _variables.yuck │ │ │ ├── _widgets.yuck │ │ │ └── _windows.yuck │ ├── picom │ │ ├── picom-backup.conf │ │ └── picom.conf │ ├── polybar │ │ ├── color │ │ ├── config.ini │ │ ├── decor │ │ ├── modules │ │ └── scripts │ │ │ ├── Powermenu-close.sh │ │ │ ├── Powermenu.sh │ │ │ ├── get_spotify_status.sh │ │ │ ├── mopidy.sh │ │ │ ├── owm-key │ │ │ ├── player-close.sh │ │ │ ├── player.sh │ │ │ ├── scroll_spotify_status.sh │ │ │ ├── weather-polybar-plugin │ │ │ ├── README.md │ │ │ ├── preview.png │ │ │ └── weather-plugin.sh │ │ │ ├── weather-toogle-disable.sh │ │ │ └── weather-toogle-enable.sh │ ├── ranger │ │ └── rc.conf │ ├── rofi-network-manager │ │ ├── LICENSE │ │ ├── desktop.png │ │ ├── fancy.rasi │ │ ├── mask.rasi │ │ ├── options.png │ │ ├── readme.md │ │ ├── rofi-network-manager.conf │ │ ├── rofi-network-manager.rasi │ │ └── rofi-network-manager.sh │ ├── sxhkd │ │ └── sxhkdrc │ └── zathura │ │ ├── INSTALL.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── lightmode.png │ │ ├── screenshot.png │ │ └── zathurarc ├── Herbstluftwm │ └── 1 ├── NOrmie2.png ├── house.jpg ├── i3-gaps │ ├── Dunst │ │ └── dunstrc │ ├── Polybar │ │ └── config │ ├── Rofi │ │ └── slate.tar.gz │ ├── i3-config │ │ ├── autostart.sh │ │ └── config │ └── picom │ │ └── picom.conf └── ign_waifu.png ├── LICENSE └── README.md /Dot files/7qv8o8lg1ph71.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/7qv8o8lg1ph71.png -------------------------------------------------------------------------------- /Dot files/Bspwm/...: -------------------------------------------------------------------------------- 1 | . 2 | -------------------------------------------------------------------------------- /Dot files/Bspwm/Rofi-custom/fancy.rasi: -------------------------------------------------------------------------------- 1 | 2 | 3 | configuration { 4 | lines: 10; 5 | columns: 1; 6 | font: "JetBrains Mono Nerd Font 12"; 7 | bw: 0; 8 | location: 0; 9 | padding: 0; 10 | fixed-num-lines: true; 11 | show-icons: false; 12 | sidebar-mode: true; 13 | separator-style: "none"; 14 | hide-scrollbar: true; 15 | fullscreen: false; 16 | fake-transparency: false; 17 | scroll-method: 1; 18 | window-format: "[{w}] ··· {c} ··· {t}"; 19 | click-to-exit: true; 20 | show-match: true; 21 | combi-hide-mode-prefix: false; 22 | display-window: ""; 23 | display-windowcd: ""; 24 | display-run: ""; 25 | display-ssh: ""; 26 | display-drun: ""; 27 | display-combi: ""; 28 | } 29 | 30 | @import "/usr/share/rofi/themes/mask.rasi" 31 | 32 | * { 33 | background-color: @bg; 34 | } 35 | 36 | window { 37 | border: 0px; 38 | border-color: @ac; 39 | border-radius: 0px; 40 | padding: 20; 41 | width: 30%; 42 | height: 50%; 43 | } 44 | 45 | prompt { 46 | spacing: 0; 47 | border: 0; 48 | text-color: @fg; 49 | } 50 | 51 | textbox-prompt-colon { 52 | expand: false; 53 | str: " "; 54 | margin: 0px 4px 0px 0px; 55 | text-color: @purple; 56 | } 57 | 58 | entry { 59 | spacing: 2; 60 | text-color: @purple; 61 | } 62 | 63 | case-indicator { 64 | spacing: 0; 65 | text-color: @purple; 66 | } 67 | 68 | inputbar { 69 | spacing: 5px; 70 | text-color: @purple; 71 | padding: 10px; 72 | children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; 73 | } 74 | 75 | mainbox { 76 | border: 0px; 77 | border-color: @ac; 78 | padding: 2; 79 | } 80 | 81 | listview { 82 | fixed-height: 20%; 83 | text-color: @fg; 84 | border: 0px; 85 | border-radius : 12px; 86 | border-color: @ac; 87 | spacing: 5px; 88 | scrollbar: false; 89 | padding: 20px 12px 10px 20px; 90 | } 91 | 92 | element-text { 93 | background-color: inherit; 94 | text-color: inherit; 95 | padding: 3px; 96 | } 97 | 98 | element { 99 | border: 2px; 100 | padding: 0px; 101 | text-color: @fg; 102 | } 103 | element normal.normal { 104 | background-color: @bg; 105 | text-color: @white; 106 | } 107 | element normal.urgent { 108 | background-color: @bg; 109 | text-color: @white; 110 | } 111 | element normal.active { 112 | background-color: @bg; 113 | text-color: @white; 114 | } 115 | element selected.normal { 116 | background-color: @blui; 117 | border-radius : 5px; 118 | text-color: @blue; 119 | } 120 | element selected.urgent { 121 | background-color: @bg; 122 | text-color: @red; 123 | } 124 | element selected.active { 125 | background-color: @bg; 126 | text-color: @white; 127 | } 128 | element alternate.normal { 129 | background-color: @bg; 130 | text-color: @white; 131 | } 132 | element alternate.urgent { 133 | background-color: @bg; 134 | text-color: @white; 135 | } 136 | element alternate.active { 137 | background-color: @bg; 138 | text-color: @white; 139 | } 140 | 141 | sidebar { 142 | border: 2px; 143 | border-color: @ac; 144 | border-radius: 20px; 145 | } 146 | 147 | button { 148 | margin: 5px; 149 | padding: 5px; 150 | text-color: @yellow; 151 | border: 0px; 152 | border-radius: 20px; 153 | border-color: @yellow; 154 | } 155 | 156 | button selected { 157 | text-color: @fg; 158 | border: 3px; 159 | border-radius: 20px; 160 | border-color: @trans; 161 | } 162 | 163 | scrollbar { 164 | width: 4px; 165 | border: 0px; 166 | handle-color: @fg; 167 | handle-width: 8px; 168 | padding: 0; 169 | } 170 | 171 | message { 172 | border: 0px; 173 | border-color: @ac; 174 | padding: 1px; 175 | } 176 | 177 | textbox { 178 | text-color: @fg; 179 | } 180 | 181 | 182 | -------------------------------------------------------------------------------- /Dot files/Bspwm/Rofi-custom/mask.rasi: -------------------------------------------------------------------------------- 1 | /* colors */ 2 | 3 | * { 4 | al: #00000000; 5 | bg: #0d1c30ff; 6 | se: #434C6Dff; 7 | fg: #52b6ffff; 8 | ac: #CA8CA5ff; 9 | red: #EC7875ff; 10 | green: #61C766ff; 11 | yellow: #FDD835ff; 12 | blue: #42A5F5ff; 13 | purple: #BA68C8ff; 14 | cyan: #4DD0E1ff; 15 | black: #000000ff; 16 | purple: #d785ffff; 17 | blui: #6d91e9ff; 18 | trans: #3E4667ff; 19 | white: #ffffffff; 20 | blue: #4bf7ffff; 21 | } 22 | -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/README.md: -------------------------------------------------------------------------------- 1 | # Sleek 2 | 3 | ### BladeRunner 4 | 5 | ![BladeRunner](bladerunner.png) 6 | 7 | ### Cherry 8 | 9 | ![Cherry](cherry.png) 10 | 11 | ### Coral 12 | 13 | ![Coral](coral.png) 14 | 15 | ### Deep 16 | 17 | ![Deep](deep.png) 18 | 19 | ### Deeper 20 | 21 | ![Deeper](deeper.png) 22 | 23 | ### Elementary 24 | 25 | ![Elementary](elementary.png) 26 | 27 | ### Futura 28 | 29 | ![Futura](futura.png) 30 | 31 | ### Nord 32 | 33 | ![Nord](nord.png) 34 | 35 | ### Psycho 36 | 37 | ![Psycho](psycho.png) 38 | 39 | ### UltraBlack 40 | 41 | ![UltraBlack](ultrablack.png) 42 | 43 | ### Wealthy 44 | 45 | ![Wealthy](wealthy.png) 46 | 47 | ### Dracula 48 | 49 | ![Dracula](dracula.png) 50 | 51 | ### VantaBlack 52 | 53 | ![VantaBlack](vantablack.png) 54 | 55 | ## Info 56 | 57 | A simple, 'sleek' theme that builds upon the basic Spotify UI to create a more stylised experience. Also removes all annoyances from free version, including banner advertisements and upgrade buttons. 58 | 59 | Created by [@harbassan](https://github.com/harbassan) 60 | 61 | ### Changing Color Schemes 62 | 63 | Change the scheme with these commands: 64 | 65 | ``` 66 | spicetify config color_scheme 67 | spicetify apply 68 | ``` 69 | -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/bladerunner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/bladerunner.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/cherry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/cherry.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/color.ini: -------------------------------------------------------------------------------- 1 | [Deep] 2 | ; White on dark blue background 3 | text = ffffff 4 | subtext = ffffff 5 | nav-active-text = ffffff 6 | main = 0d1c30 7 | sidebar = 051024 8 | player = 030b1e 9 | card = 9e7df7 10 | shadow = 000000 11 | main-secondary = 854cf5 12 | button = 1464b5 13 | button-secondary = ffffff 14 | button-active = 4a99e9 15 | button-disabled = 21282f 16 | nav-active = 4b7fe9 17 | play-button = 4b7fe9 18 | tab-active = 3db0f1 19 | notification = 051024 20 | notification-error = 051024 21 | playback-bar = 7ea6f9 22 | misc = FFFFFF 23 | 24 | 25 | [Wealthy] 26 | ; Green on dark grey background 27 | text = 8bc34a 28 | subtext = b4b4b4 29 | nav-active-text = 202020 30 | main = 202020 31 | sidebar = 202020 32 | player = 242424 33 | card = 242424 34 | shadow = 000000 35 | main-secondary = 171717 36 | button = 8bc34a 37 | button-secondary = 6a913d 38 | button-active = 98da4b 39 | button-disabled = 353535 40 | nav-active = 8bc34a 41 | play-button = 8bc34a 42 | tab-active = 171717 43 | notification = 242424 44 | notification-error = 242424 45 | playback-bar = 8bc34a 46 | misc = FFFFFF 47 | 48 | [Cherry] 49 | ; Pink on dark blue background 50 | text = d98ba1 51 | subtext = d7d7d7 52 | nav-active-text = 131c26 53 | main = 131c26 54 | sidebar = 131c26 55 | player = 131c26 56 | card = 131c26z 57 | shadow = 0e0e13 58 | main-secondary = 09111b 59 | button = d98ba1 60 | button-secondary = d98ba1 61 | button-active = ff84ac 62 | button-disabled = 192531 63 | nav-active = ff84ac 64 | play-button = d98ba1 65 | tab-active = 09111b 66 | notification = 192531 67 | notification-error = 192531 68 | playback-bar = d98ba1 69 | misc = FFFFFF 70 | 71 | [Coral] 72 | ; Salmon on dark blue background 73 | text = f88379 74 | subtext = d7d7d7 75 | nav-active-text = 131c26 76 | main = 131c26 77 | sidebar = 131c26 78 | player = 131c26 79 | card = 131c26 80 | shadow = 0e0e13 81 | main-secondary = 09111b 82 | button = f88379 83 | button-secondary = f88379 84 | button-active = fb958b 85 | button-disabled = 192531 86 | nav-active = fb958b 87 | play-button = f88379 88 | tab-active = 09111b 89 | notification = 192531 90 | notification-error = 192531 91 | playback-bar = f88379 92 | misc = FFFFFF 93 | 94 | 95 | 96 | [Deeper] 97 | ; Light blue on dark background 98 | text = 4f9a87 99 | subtext = 4f9a87 100 | nav-active-text = 4f9a87 101 | main = 040614 102 | sidebar = 0F111A 103 | player = 0F111A 104 | card = 0C1C19 105 | shadow = 000000 106 | main-secondary = 131520 107 | button = 4f9a87 108 | button-secondary = 4f9a87 109 | button-active = 4a99e9 110 | button-disabled = 0C1C19 111 | nav-active = 040614 112 | play-button = 4f9a87 113 | tab-active = 0a1527 114 | notification = 051024 115 | notification-error = 051024 116 | playback-bar = 4f9a87 117 | misc = FFFFFF 118 | 119 | [Psycho] 120 | ; Red on dark grey background 121 | text = c20000 122 | subtext = ffffff 123 | nav-active-text = 101010 124 | main = 101010 125 | sidebar = 171717 126 | player = 171717 127 | card = 171717 128 | shadow = 000000 129 | main-secondary = 1f1f1f 130 | button = c20000 131 | button-secondary = a20606 132 | button-active = c20000 133 | button-disabled = 404040 134 | nav-active = 9f0909 135 | play-button = c20000 136 | tab-active = 171717 137 | notification = 5e0000 138 | notification-error = 5e0000 139 | playback-bar = c20000 140 | misc = FFFFFF 141 | 142 | [UltraBlack] 143 | ; White on black background 144 | text = FFFFFF 145 | subtext = DEDEDE 146 | nav-active-text = 000000 147 | main = 000000 148 | sidebar = 000000 149 | player = 000000 150 | card = 000000 151 | shadow = 000000 152 | main-secondary = 292929 153 | button = 1DB954 154 | button-secondary = DEDEDE 155 | button-active = 1DB954 156 | button-disabled = 2f2f2f 157 | nav-active = DEDEDE 158 | play-button = DEDEDE 159 | tab-active = 292929 160 | notification = 292929 161 | notification-error = 292929 162 | playback-bar = DEDEDE 163 | misc = FFFFFF 164 | 165 | [Nord] 166 | ; Light grey on blue background 167 | text = D8DEE9 168 | subtext = E5E9F0 169 | nav-active-text = D8DEE9 170 | main = 2E3440 171 | sidebar = 2E3440 172 | player = 2E3440 173 | card = 2E3440 174 | shadow = 1d2128 175 | main-secondary = 434c5e 176 | button = 5E81AC 177 | button-secondary = D8DEE9 178 | button-active = 81A1C1 179 | button-disabled = 434C5E 180 | nav-active = 4c566a 181 | play-button = 5E81AC 182 | tab-active = 3b4252 183 | notification = 3b4252 184 | notification-error = 3b4252 185 | playback-bar = DEDEDE 186 | misc = FFFFFF 187 | 188 | [Futura] 189 | ; Cyan on dark background 190 | text = 34ad7e 191 | subtext = DEDEDE 192 | nav-active-text = 2E2837 193 | main = 2E2837 194 | sidebar = 2E2837 195 | player = 2E2837 196 | card = 2E2837 197 | shadow = 000000 198 | main-secondary = 51485b 199 | button = 34ad7e 200 | button-secondary = 34ad7e 201 | button-active = 00bf76 202 | button-disabled = 3f3c45 203 | nav-active = 34ad7e 204 | play-button = 34ad7e 205 | tab-active = 51485b 206 | notification = 51485b 207 | notification-error = 51485b 208 | playback-bar = 34ad7e 209 | misc = FFFFFF 210 | 211 | [Elementary] 212 | ; Purple and pink on dark background 213 | text = c59dff 214 | subtext = dedede 215 | nav-active-text = 1d1821 216 | main = 1f1f29 217 | sidebar = 1d1821 218 | player = 1d1821 219 | card = 2E2837 220 | shadow = 000000 221 | main-secondary = 1d1821 222 | button = d4516f 223 | button-secondary = c59dff 224 | button-active = f16d8c 225 | button-disabled = 2E303E 226 | nav-active = d4516f 227 | play-button = d4516f 228 | tab-active = 1d1821 229 | notification = 2E2837 230 | notification-error = 2E2837 231 | playback-bar = c59dff 232 | misc = FFFFFF 233 | 234 | [BladeRunner] 235 | ; Yellow, pink and blue on dark background 236 | text = dcd88c 237 | subtext = 9fbfb7 238 | nav-active-text = 1d1821 239 | main = 181b1e 240 | sidebar = 181b1e 241 | player = 181b1e 242 | card = 17191d 243 | shadow = 000000 244 | main-secondary = 0b0d0e 245 | button = f6867c 246 | button-secondary = dcd88c 247 | button-active = f6867c 248 | button-disabled = 242a2e 249 | nav-active = f6867c 250 | play-button = f6867c 251 | tab-active = 131417 252 | notification = 131417 253 | notification-error = 131417 254 | playback-bar = dcd88c 255 | misc = FFFFFF 256 | 257 | [Dracula] 258 | ; https://draculatheme.com/contribute 259 | text = 50fa7b 260 | subtext = bd93f9 261 | nav-active-text = 282a36 262 | main = 282a36 263 | sidebar = 282a36 264 | player = 282a36 265 | card = 282a36 266 | shadow = 000000 267 | main-secondary = 1c1e26 268 | button = 50fa7b 269 | button-secondary = ff79c6 270 | button-active = 00bf76 271 | button-disabled = 3f3c45 272 | nav-active = 50fa7b 273 | play-button = 50fa7b 274 | tab-active = 1c1e26 275 | notification = 1c1e26 276 | notification-error = 1c1e26 277 | playback-bar = 50fa7b 278 | misc = FFFFFF 279 | 280 | [VantaBlack] 281 | ; Gray on black background 282 | text = 666666 283 | subtext = 666666 284 | nav-active-text = 666666 285 | main = 000000 286 | sidebar = 000000 287 | player = 000000 288 | card = 000000 289 | shadow = 333333 290 | main-secondary = 000000 291 | button = 000000 292 | button-secondary = 000000 293 | button-active = 333333 294 | button-disabled = 000000 295 | nav-active = 333333 296 | play-button = 000000 297 | tab-active = 333333 298 | notification = 000000 299 | notification-error = 000000 300 | playback-bar = 000000 301 | misc = 000000 302 | 303 | ; Description 304 | 305 | ; text = main text, playlist names in main field, name of playlist selected in sidebar, headings 306 | ; subtext = text in main buttons in sidebar, playlist names in sidebar, artist names, and mini infos 307 | ; nav-active-text = text in main buttons in sidebar when active 308 | ; main = main bg 309 | ; main-secondary = bg color of selected song rows, bg color of artist/track cards 310 | ; sidebar = sidebar bg 311 | ; player = player bg 312 | ; card = popup-card bg 313 | ; shadow = all shadows 314 | ; button = playlist buttons bg in sidebar, drop-down menus, now playing song, like button 315 | ; button-secondary = download and options button 316 | ; button-active = hover on song selected 317 | ; button-disabled = seekbar bg, volume bar bg, scrollbar 318 | ; nav-active = sidebar buttons bg 319 | ; play-button = color of main play button in main field 320 | ; tab-active = button bg in main field (playlists, podcasts, artists, albums) 321 | ; notification = notification ('Added to liked songs' etc.) 322 | ; playback-bar = seekbar fg, volume bar fg, main play/pause button 323 | ; misc = miscellaneous 324 | -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/coral.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/coral.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/deep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/deep.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/deeper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/deeper.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/dracula.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/dracula.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/elementary.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/elementary.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/futura.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/futura.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/nord.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/psycho.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/psycho.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/ultrablack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/ultrablack.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/vantablack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/vantablack.png -------------------------------------------------------------------------------- /Dot files/Bspwm/Spicietify-customcolor/Sleek/wealthy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/Spicietify-customcolor/Sleek/wealthy.png -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty-master.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/alacritty/alacritty-master.zip -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty-master/INSTALL.md: -------------------------------------------------------------------------------- 1 | ### [Alacritty](https://github.com/alacritty/alacritty) 2 | 3 | #### Install 4 | 5 | Download using the [GitHub .zip download](https://github.com/dracula/alacritty/archive/master.zip) option. 6 | 7 | You just have to import `dracula.yml` in `~/.config/alacritty/alacritty.yml`. 8 | 9 | ``` yaml 10 | import: 11 | - /path/to/dracula.yml 12 | ``` 13 | -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty-master/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2018 Dracula Theme 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty-master/README.md: -------------------------------------------------------------------------------- 1 | # Dracula for [Alacritty](https://github.com/alacritty/alacritty) 2 | 3 | > A dark theme for [Alacritty](https://github.com/alacritty/alacritty). 4 | 5 | ![Screenshot](./screenshot.png) 6 | 7 | ## Install 8 | 9 | All instructions can be found at [draculatheme.com/alacritty](https://draculatheme.com/alacritty). 10 | 11 | ## Team 12 | 13 | This theme is maintained by the following person(s) and a bunch of [awesome contributors](https://github.com/dracula/alacritty/graphs/contributors). 14 | 15 | [![Leandro Pincini](https://avatars3.githubusercontent.com/u/57139?s=70&v=3)](https://github.com/leandropincini) | [![Clar Fon](https://avatars2.githubusercontent.com/u/15850505?s=70&v=3)](http://github.com/clarfon) 16 | --- | --- 17 | [Leandro Pincini](https://github.com/leandropincini) | [Clar Fon](https://github.com/clarfon) 18 | 19 | ## Community 20 | 21 | * [Twitter](https://twitter.com/draculatheme) - Best for getting updates about themes and new stuff. 22 | * [GitHub](https://github.com/dracula/dracula-theme/discussions) - Best for asking questions and discussing issues. 23 | * [Discord](https://draculatheme.com/discord-invite) - Best for hanging out with the community. 24 | 25 | ## License 26 | 27 | [MIT License](./LICENSE) 28 | -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty-master/dracula.yml: -------------------------------------------------------------------------------- 1 | # Dracula theme for Alacritty 2 | # https://draculatheme.com/alacritty 3 | # 4 | # Color palette 5 | # https://spec.draculatheme.com 6 | # 7 | # Template 8 | # https://github.com/alacritty/alacritty/blob/master/alacritty.yml 9 | 10 | colors: 11 | primary: 12 | background: '#282a36' 13 | foreground: '#f8f8f2' 14 | bright_foreground: '#ffffff' 15 | cursor: 16 | text: CellBackground 17 | cursor: CellForeground 18 | vi_mode_cursor: 19 | text: CellBackground 20 | cursor: CellForeground 21 | search: 22 | matches: 23 | foreground: '#44475a' 24 | background: '#50fa7b' 25 | focused_match: 26 | foreground: '#44475a' 27 | background: '#ffb86c' 28 | bar: 29 | background: '#282a36' 30 | foreground: '#f8f8f2' 31 | hints: 32 | start: 33 | foreground: '#282a36' 34 | background: '#f1fa8c' 35 | end: 36 | foreground: '#f1fa8c' 37 | background: '#282a36' 38 | line_indicator: 39 | foreground: None 40 | background: None 41 | selection: 42 | text: CellForeground 43 | background: '#44475a' 44 | normal: 45 | black: '#21222c' 46 | red: '#ff5555' 47 | green: '#50fa7b' 48 | yellow: '#f1fa8c' 49 | blue: '#bd93f9' 50 | magenta: '#ff79c6' 51 | cyan: '#8be9fd' 52 | white: '#f8f8f2' 53 | bright: 54 | black: '#6272a4' 55 | red: '#ff6e6e' 56 | green: '#69ff94' 57 | yellow: '#ffffa5' 58 | blue: '#d6acff' 59 | magenta: '#ff92df' 60 | cyan: '#a4ffff' 61 | white: '#ffffff' 62 | font: 63 | # Normal (roman) font face 64 | normal: 65 | 66 | # 67 | # Default: 68 | # - (macOS) Menlo 69 | # - (Linux/BSD) monospace 70 | # - (Windows) Consolas 71 | family: JetBrainsMono Nerd Font 72 | 73 | # The `style` can be specified to pick a specific face. 74 | style: Medium 75 | # Bold font face 76 | #bold: 77 | # Font family 78 | # 79 | # If the bold family is not specified, it will fall back to the 80 | # value specified for the normal font. 81 | #family: FiraCode Nerd Font mono 82 | 83 | # The `style` can be specified to pick a specific face. 84 | #style: Bold 85 | 86 | # Italic font face 87 | #italic: 88 | # Font family 89 | # 90 | # If the italic family is not specified, it will fall back to the 91 | # value specified for the normal font. 92 | #family: monospace 93 | 94 | # The `style` can be specified to pick a specific face. 95 | #style: Italic 96 | 97 | # Bold italic font face 98 | #bold_italic: 99 | # Font family 100 | # 101 | # If the bold italic family is not specified, it will fall back to the 102 | # value specified for the normal font. 103 | #family: monospace 104 | 105 | # The `style` can be specified to pick a specific face. 106 | #style: Bold Italic 107 | 108 | # Point size 109 | size: 10.0 110 | 111 | -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty-master/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/alacritty/alacritty-master/screenshot.png -------------------------------------------------------------------------------- /Dot files/Bspwm/alacritty/alacritty.yml: -------------------------------------------------------------------------------- 1 | # Configuration for Alacritty, the GPU enhanced terminal emulator. 2 | 3 | # Import additional configuration files 4 | # 5 | # Imports are loaded in order, skipping all missing files, with the importing 6 | # file being loaded last. If a field is already present in a previous import, it 7 | # will be replaced. 8 | # 9 | # All imports must either be absolute paths starting with `/`, or paths relative 10 | # to the user's home directory starting with `~/`. 11 | window: 12 | opacity: 1.0 13 | font: 14 | size: 10.0 15 | normal: 16 | family: JetBrainsMono Nerd Font 17 | style: Medium 18 | bold: 19 | family: JetBrainsMono Nerd Font 20 | italic: 21 | family: JetBrainsMono Nerd Font 22 | colors: 23 | primary: 24 | background: '#010610' 25 | foreground: '#ace1ff' 26 | bright_foreground: '#ffffff' 27 | cursor: 28 | text: CellBackground 29 | cursor: CellForeground 30 | vi_mode_cursor: 31 | text: CellBackground 32 | cursor: CellForeground 33 | search: 34 | matches: 35 | foreground: '#44475a' 36 | background: '#50fa7b' 37 | focused_match: 38 | foreground: '#44475a' 39 | background: '#ffb86c' 40 | bar: 41 | background: '#282a36' 42 | foreground: '#f8f8f2' 43 | hints: 44 | start: 45 | foreground: '#282a36' 46 | background: '#f1fa8c' 47 | end: 48 | foreground: '#f1fa8c' 49 | background: '#282a36' 50 | line_indicator: 51 | foreground: None 52 | background: None 53 | selection: 54 | text: CellForeground 55 | background: '#44475a' 56 | normal: 57 | black: '#21222c' 58 | red: '#4c7add' 59 | green: '#488cb1' 60 | yellow: '#f7f762' 61 | blue: '#bd93f9' 62 | magenta: '#62dff8' 63 | cyan: '#8be9fd' 64 | white: '#f8f8f2' 65 | bright: 66 | black: '#6272a4' 67 | red: '#bd93f9' 68 | green: '#a6dff2' 69 | yellow: '#ffffa5' 70 | blue: '#99e3fb' 71 | magenta: '#1c2f3e' 72 | cyan: '#a4ffff' 73 | white: '#ffffff' 74 | 75 | -------------------------------------------------------------------------------- /Dot files/Bspwm/bspwm/bspwmrc: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | pgrep -x sxhkd > /dev/null || sxhkd & 4 | 5 | $HOME/.resconfig/Resolutions.sh & 6 | 7 | feh --bg-scale ~/Wallpapers/house.jpg & 8 | 9 | killall -q polybar 10 | 11 | 12 | 13 | # Wait until the processes have been shut down 14 | while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done 15 | 16 | polybar JIBON & 17 | 18 | 19 | 20 | picom & 21 | 22 | 23 | bspc monitor -d 一 二 三 四 五 六 七 八 24 | 25 | bspc config border_width 0 26 | bspc config border_radius 0 27 | bspc config window_gap 12 28 | #COLOURS 29 | bspc config normal_border_color "#8ba3f4" 30 | bspc config focused_border_color "#ffa1f7" 31 | 32 | ##### 33 | 34 | bspc config split_ratio 0.52 35 | bspc config borderless_monocle true 36 | bspc config gapless_monocle true 37 | 38 | bspc rule -a Gimp desktop='^8' state=floating follow=on 39 | bspc rule -a Chromium desktop='^2' 40 | bspc rule -a mplayer2 state=floating 41 | bspc rule -a Kupfer.py focus=on 42 | bspc rule -a Screenkey manage=off 43 | bspc rule -a nm-connection-editor='^1' state=floating 44 | bspc rule -a kitty state=floating 45 | bspc rule -a conky state=floating 46 | 47 | -------------------------------------------------------------------------------- /Dot files/Bspwm/dunst/notify-send.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # notify-send.sh - drop-in replacement for notify-send with more features 4 | # Copyright (C) 2015-2021 notify-send.sh authors (see AUTHORS file) 5 | 6 | # This program is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | 11 | # This program is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | 16 | # You should have received a copy of the GNU General Public License 17 | # along with this program. If not, see . 18 | 19 | # Desktop Notifications Specification 20 | # https://developer.gnome.org/notification-spec/ 21 | 22 | VERSION=1.2 23 | NOTIFY_ARGS=(--session 24 | --dest org.freedesktop.Notifications 25 | --object-path /org/freedesktop/Notifications) 26 | EXPIRE_TIME=-1 27 | APP_NAME="${0##*/}" 28 | REPLACE_ID=0 29 | URGENCY=1 30 | HINTS=() 31 | SUMMARY_SET=n 32 | 33 | help() { 34 | cat < [BODY] - create a notification 37 | 38 | Help Options: 39 | -?|--help Show help options 40 | 41 | Application Options: 42 | -u, --urgency=LEVEL Specifies the urgency level (low, normal, critical). 43 | -t, --expire-time=TIME Specifies the timeout in milliseconds at which to expire the notification. 44 | -f, --force-expire Forcefully closes the notification when the notification has expired. 45 | -a, --app-name=APP_NAME Specifies the app name for the icon. 46 | -i, --icon=ICON[,ICON...] Specifies an icon filename or stock icon to display. 47 | -c, --category=TYPE[,TYPE...] Specifies the notification category. 48 | -h, --hint=TYPE:NAME:VALUE Specifies basic extra data to pass. Valid types are int, double, string and byte. 49 | -o, --action=LABEL:COMMAND Specifies an action. Can be passed multiple times. LABEL is usually a button's label. COMMAND is a shell command executed when action is invoked. 50 | -d, --default-action=COMMAND Specifies the default action which is usually invoked by clicking the notification. 51 | -l, --close-action=COMMAND Specifies the action invoked when notification is closed. 52 | -p, --print-id Print the notification ID to the standard output. 53 | -r, --replace=ID Replace existing notification. 54 | -R, --replace-file=FILE Store and load notification replace ID to/from this file. 55 | -s, --close=ID Close notification. 56 | -v, --version Version of the package. 57 | 58 | EOF 59 | } 60 | 61 | convert_type() { 62 | case "$1" in 63 | int) echo int32 ;; 64 | double|string|byte) echo "$1" ;; 65 | *) echo error; return 1 ;; 66 | esac 67 | } 68 | 69 | make_action_key() { 70 | echo "$(tr -dc _A-Z-a-z-0-9 <<< \"$1\")${RANDOM}" 71 | } 72 | 73 | make_action() { 74 | local action_key="$1" 75 | printf -v text "%q" "$2" 76 | echo "\"$action_key\", \"$text\"" 77 | } 78 | 79 | make_hint() { 80 | type=$(convert_type "$1") 81 | [[ ! $? = 0 ]] && return 1 82 | name="$2" 83 | [[ "$type" = string ]] && command="\"$3\"" || command="$3" 84 | echo "\"$name\": <$type $command>" 85 | } 86 | 87 | concat_actions() { 88 | local result="$1" 89 | shift 90 | for s in "$@"; do 91 | result="$result, $s" 92 | done 93 | echo "[$result]" 94 | } 95 | 96 | concat_hints() { 97 | local result="$1" 98 | shift 99 | for s in "$@"; do 100 | result="$result, $s" 101 | done 102 | echo "{$result}" 103 | } 104 | 105 | parse_notification_id(){ 106 | sed 's/(uint32 \([0-9]\+\),)/\1/g' 107 | } 108 | 109 | notify() { 110 | local actions="$(concat_actions "${ACTIONS[@]}")" 111 | local hints="$(concat_hints "${HINTS[@]}")" 112 | 113 | NOTIFICATION_ID=$(gdbus call "${NOTIFY_ARGS[@]}" \ 114 | --method org.freedesktop.Notifications.Notify \ 115 | -- \ 116 | "$APP_NAME" "$REPLACE_ID" "$ICON" "$SUMMARY" "$BODY" \ 117 | "${actions}" "${hints}" "int32 $EXPIRE_TIME" \ 118 | | parse_notification_id) 119 | 120 | if [[ -n "$STORE_ID" ]] ; then 121 | echo "$NOTIFICATION_ID" > "$STORE_ID" 122 | fi 123 | if [[ -n "$PRINT_ID" ]] ; then 124 | echo "$NOTIFICATION_ID" 125 | fi 126 | 127 | if [[ -n "$FORCE_EXPIRE" ]] ; then 128 | SLEEP_TIME="$( LC_NUMERIC=C printf %f "${EXPIRE_TIME}e-3" )" 129 | ( sleep "$SLEEP_TIME" ; notify_close "$NOTIFICATION_ID" ) & 130 | fi 131 | 132 | maybe_run_action_handler 133 | } 134 | 135 | notify_close () { 136 | gdbus call "${NOTIFY_ARGS[@]}" --method org.freedesktop.Notifications.CloseNotification "$1" >/dev/null 137 | } 138 | 139 | process_urgency() { 140 | case "$1" in 141 | low) URGENCY=0 ;; 142 | normal) URGENCY=1 ;; 143 | critical) URGENCY=2 ;; 144 | *) echo "Unknown urgency $URGENCY specified. Known urgency levels: low, normal, critical." 145 | exit 1 146 | ;; 147 | esac 148 | } 149 | 150 | process_category() { 151 | IFS=, read -a categories <<< "$1" 152 | for category in "${categories[@]}"; do 153 | hint="$(make_hint string category "$category")" 154 | HINTS=("${HINTS[@]}" "$hint") 155 | done 156 | } 157 | 158 | process_hint() { 159 | IFS=: read type name command <<< "$1" 160 | if [[ -z "$name" ]] || [[ -z "$command" ]] ; then 161 | echo "Invalid hint syntax specified. Use TYPE:NAME:VALUE." 162 | exit 1 163 | fi 164 | hint="$(make_hint "$type" "$name" "$command")" 165 | if [[ ! $? = 0 ]] ; then 166 | echo "Invalid hint type \"$type\". Valid types are int, double, string and byte." 167 | exit 1 168 | fi 169 | HINTS=("${HINTS[@]}" "$hint") 170 | } 171 | 172 | maybe_run_action_handler() { 173 | if [[ -n "$NOTIFICATION_ID" ]] && [[ -n "$ACTION_COMMANDS" ]]; then 174 | local notify_action="$(dirname ${BASH_SOURCE[0]})/notify-action.sh" 175 | if [[ -x "$notify_action" ]] ; then 176 | "$notify_action" "$NOTIFICATION_ID" "${ACTION_COMMANDS[@]}" & 177 | exit 0 178 | else 179 | echo "executable file not found: $notify_action" 180 | exit 1 181 | fi 182 | fi 183 | } 184 | 185 | process_action() { 186 | IFS=: read name command <<<"$1" 187 | if [[ -z "$name" ]] || [[ -z "$command" ]]; then 188 | echo "Invalid action syntax specified. Use NAME:COMMAND." 189 | exit 1 190 | fi 191 | 192 | local action_key="$(make_action_key "$name")" 193 | ACTION_COMMANDS=("${ACTION_COMMANDS[@]}" "$action_key" "$command") 194 | 195 | local action="$(make_action "$action_key" "$name")" 196 | ACTIONS=("${ACTIONS[@]}" "$action") 197 | } 198 | 199 | process_special_action() { 200 | action_key="$1" 201 | command="$2" 202 | 203 | if [[ -z "$action_key" ]] || [[ -z "$command" ]]; then 204 | echo "Command must not be empty" 205 | exit 1 206 | fi 207 | 208 | ACTION_COMMANDS=("${ACTION_COMMANDS[@]}" "$action_key" "$command") 209 | 210 | if [[ "$action_key" != close ]]; then 211 | local action="$(make_action "$action_key" "$name")" 212 | ACTIONS=("${ACTIONS[@]}" "$action") 213 | fi 214 | } 215 | 216 | process_posargs() { 217 | if [[ "$1" = -* ]] && ! [[ "$positional" = yes ]] ; then 218 | echo "Unknown option $1" 219 | exit 1 220 | else 221 | if [[ "$SUMMARY_SET" = n ]]; then 222 | SUMMARY="$1" 223 | SUMMARY_SET=y 224 | else 225 | BODY="$1" 226 | fi 227 | fi 228 | } 229 | 230 | while (( $# > 0 )) ; do 231 | case "$1" in 232 | -\?|--help) 233 | help 234 | exit 0 235 | ;; 236 | -v|--version) 237 | echo "${0##*/} $VERSION" 238 | exit 0 239 | ;; 240 | -u|--urgency|--urgency=*) 241 | [[ "$1" = --urgency=* ]] && urgency="${1#*=}" || { shift; urgency="$1"; } 242 | process_urgency "$urgency" 243 | ;; 244 | -t|--expire-time|--expire-time=*) 245 | [[ "$1" = --expire-time=* ]] && EXPIRE_TIME="${1#*=}" || { shift; EXPIRE_TIME="$1"; } 246 | if ! [[ "$EXPIRE_TIME" =~ ^-?[0-9]+$ ]]; then 247 | echo "Invalid expire time: ${EXPIRE_TIME}" 248 | exit 1; 249 | fi 250 | ;; 251 | -f|--force-expire) 252 | FORCE_EXPIRE=yes 253 | ;; 254 | -a|--app-name|--app-name=*) 255 | [[ "$1" = --app-name=* ]] && APP_NAME="${1#*=}" || { shift; APP_NAME="$1"; } 256 | ;; 257 | -i|--icon|--icon=*) 258 | [[ "$1" = --icon=* ]] && ICON="${1#*=}" || { shift; ICON="$1"; } 259 | ;; 260 | -c|--category|--category=*) 261 | [[ "$1" = --category=* ]] && category="${1#*=}" || { shift; category="$1"; } 262 | process_category "$category" 263 | ;; 264 | -h|--hint|--hint=*) 265 | [[ "$1" = --hint=* ]] && hint="${1#*=}" || { shift; hint="$1"; } 266 | process_hint "$hint" 267 | ;; 268 | -o | --action | --action=*) 269 | [[ "$1" == --action=* ]] && action="${1#*=}" || { shift; action="$1"; } 270 | process_action "$action" 271 | ;; 272 | -d | --default-action | --default-action=*) 273 | [[ "$1" == --default-action=* ]] && default_action="${1#*=}" || { shift; default_action="$1"; } 274 | process_special_action default "$default_action" 275 | ;; 276 | -l | --close-action | --close-action=*) 277 | [[ "$1" == --close-action=* ]] && close_action="${1#*=}" || { shift; close_action="$1"; } 278 | process_special_action close "$close_action" 279 | ;; 280 | -p|--print-id) 281 | PRINT_ID=yes 282 | ;; 283 | -r|--replace|--replace=*) 284 | [[ "$1" = --replace=* ]] && REPLACE_ID="${1#*=}" || { shift; REPLACE_ID="$1"; } 285 | ;; 286 | -R|--replace-file|--replace-file=*) 287 | [[ "$1" = --replace-file=* ]] && filename="${1#*=}" || { shift; filename="$1"; } 288 | if [[ -s "$filename" ]]; then 289 | REPLACE_ID="$(< "$filename")" 290 | fi 291 | STORE_ID="$filename" 292 | ;; 293 | -s|--close|--close=*) 294 | [[ "$1" = --close=* ]] && close_id="${1#*=}" || { shift; close_id="$1"; } 295 | # always check that --close provides a numeric value 296 | if [[ -z "$close_id" || ! "$close_id" =~ ^[0-9]+$ ]]; then 297 | echo "Invalid close id: '$close_id'" 298 | exit 1 299 | fi 300 | notify_close "$close_id" 301 | exit $? 302 | ;; 303 | --) 304 | positional=yes 305 | ;; 306 | *) 307 | process_posargs "$1" 308 | ;; 309 | esac 310 | shift 311 | done 312 | 313 | # always force --replace and --replace-file to provide a numeric value; 0 means no id provided 314 | if [[ -z "$REPLACE_ID" || ! "$REPLACE_ID" =~ ^[0-9]+$ ]]; then 315 | REPLACE_ID=0 316 | fi 317 | 318 | # urgency is always set 319 | HINTS=("$(make_hint byte urgency "$URGENCY")" "${HINTS[@]}") 320 | 321 | if [[ "$SUMMARY_SET" = n ]] ; then 322 | help 323 | exit 1 324 | else 325 | notify 326 | fi 327 | -------------------------------------------------------------------------------- /Dot files/Bspwm/dunst/volume.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # You can call this script like this: 4 | # $./volume.sh up 5 | # $./volume.sh down 6 | # $./volume.sh mute 7 | 8 | function get_volume { 9 | amixer -D pulse get Master | grep '%' | head -n 1 | cut -d '[' -f 2 | cut -d '%' -f 1 10 | } 11 | 12 | function is_mute { 13 | amixer -D pulse get Master | grep '%' | grep -oE '[^ ]+$' | grep off > /dev/null 14 | } 15 | 16 | function send_notification { 17 | DIR=`dirname "$0"` 18 | volume=`get_volume` 19 | # Make the bar with the special character ─ (it's not dash -) 20 | # https://en.wikipedia.org/wiki/Box-drawing_character 21 | #bar=$(seq -s "─" $(($volume/5)) | sed 's/[0-9]//g') 22 | if [ "$volume" = "0" ]; then 23 | icon_name="/usr/share/icons/Faba/48x48/notifications/notification-audio-volume-muted.svg" 24 | $DIR/notify-send.sh "$volume"" " -i "$icon_name" -t 2000 -h int:value:"$volume" -h string:synchronous:"─" --replace=555 25 | else 26 | if [ "$volume" -lt "10" ]; then 27 | icon_name="/usr/share/icons/Faba/48x48/notifications/notification-audio-volume-low.svg" 28 | $DIR/notify-send.sh "$volume"" " -i "$icon_name" --replace=555 -t 2000 29 | else 30 | if [ "$volume" -lt "30" ]; then 31 | icon_name="/usr/share/icons/Faba/48x48/notifications/notification-audio-volume-low.svg" 32 | else 33 | if [ "$volume" -lt "70" ]; then 34 | icon_name="/usr/share/icons/Faba/48x48/notifications/notification-audio-volume-medium.svg" 35 | else 36 | icon_name="/usr/share/icons/Faba/48x48/notifications/notification-audio-volume-high.svg" 37 | fi 38 | fi 39 | fi 40 | fi 41 | bar=$(seq -s "─" $(($volume/5)) | sed 's/[0-9]//g') 42 | # Send the notification 43 | $DIR/notify-send.sh "$volume"" ""$bar" -i "$icon_name" -t 2000 -h int:value:"$volume" -h string:synchronous:"$bar" --replace=555 44 | 45 | } 46 | 47 | case $1 in 48 | up) 49 | # Set the volume on (if it was muted) 50 | amixer -D pulse set Master on > /dev/null 51 | # Up the volume (+ 5%) 52 | amixer -D pulse sset Master 5%+ > /dev/null 53 | send_notification 54 | ;; 55 | down) 56 | amixer -D pulse set Master on > /dev/null 57 | amixer -D pulse sset Master 5%- > /dev/null 58 | send_notification 59 | ;; 60 | mute) 61 | # Toggle mute 62 | amixer -D pulse set Master 1+ toggle > /dev/null 63 | if is_mute ; then 64 | DIR=`dirname "$0"` 65 | $DIR/notify-send.sh -i "/usr/share/icons/Faba/48x48/notifications/notification-audio-volume-muted.svg" --replace=555 -u normal "Mute" -t 2000 66 | else 67 | send_notification 68 | fi 69 | ;; 70 | esac 71 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/assets/fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/assets/fallback.png -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/assets/profile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/assets/profile.png -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/eww.scss: -------------------------------------------------------------------------------- 1 | * { 2 | all: unset; 3 | } 4 | 5 | window { 6 | background-color: #0e0e0e; 7 | font-family: FiraCode Nerd Font; 8 | } 9 | 10 | .weather-icon { 11 | font-size: 55px; 12 | padding-right: 10px; 13 | margin-top: 10px; 14 | margin-bottom: 10px; 15 | margin-right: 80px; 16 | margin-left: 20px; 17 | padding-left: 10px; 18 | font-family: FiraCode; 19 | } 20 | .weather-stat { 21 | font-size: 13px; 22 | padding-top: 0px; 23 | padding-left: 80px; 24 | padding-right: 10px ; 25 | margin-top: -40px; 26 | margin-bottom: -10px; 27 | font-weight: bold; 28 | color: #ffffff; 29 | } 30 | 31 | .temperature { 32 | margin-top: -20px; 33 | padding-left: 5px; 34 | padding-right: 5px; 35 | font-size: 25px; 36 | margin-left: 5px; 37 | font-weight: 900; 38 | color: #ffffff; 39 | } 40 | 41 | .weather-quote-head { 42 | margin: 10px 0px 0px 0px; 43 | font-size: 0px; 44 | } 45 | .weather-quote-tail 46 | { 47 | margin: -5px 0px 5px 0px; 48 | font-size: 0px; 49 | } 50 | 51 | .l1, .l2, .l3, .l4, .l5, .l6 { 52 | font-size: 0px; 53 | font-weight: 600; 54 | } 55 | 56 | 57 | button { 58 | all: unset; 59 | background-color: #121212; 60 | padding: 10px; 61 | font-family: FiraCode; 62 | } 63 | 64 | .musicart { 65 | background-size: 260px; 66 | min-height: 260px; 67 | min-width: 260px; 68 | margin: 20px; 69 | border-radius: 10px; 70 | } 71 | 72 | .musictitle { 73 | font-family: FiraCode; 74 | font-size: 17px; 75 | font-weight: bold; 76 | margin-bottom: 10px; 77 | 78 | } 79 | 80 | .musicartist { 81 | font-size: 15px; 82 | margin-bottom: 10px; 83 | } 84 | 85 | .musicbtn button { 86 | font-size: 12px; 87 | } 88 | 89 | .musicbtn button:hover { 90 | color: #D35D6E; 91 | font-family: FiraCode; 92 | } 93 | 94 | .music-slider scale trough { 95 | all: unset; 96 | background-color: #4e4e4e; 97 | border-radius: 50px; 98 | min-height: 5px; 99 | min-width: 240px; 100 | margin-bottom: 20px; 101 | } 102 | 103 | .music-slider scale trough highlight { 104 | all: unset; 105 | background-color: #ffd5cd; 106 | color: #000000; 107 | border-radius: 10px; 108 | } 109 | 110 | .music-slider slider { 111 | all: unset; 112 | color: #ffd5cd; 113 | } 114 | .musicart-side { 115 | background-color: #0e0e0e; 116 | background-size: 92px; 117 | min-height: 90px; 118 | min-width: 90px; 119 | margin: 15px 5px 15px 15px; 120 | border-radius: 6px; 121 | font-family: FiraCode; 122 | } 123 | .musicinfo-side { 124 | font-size: 13px; 125 | margin-top: 32px; 126 | font-weight: bold; 127 | border-radius: 10px; 128 | min-width: 40px; 129 | } 130 | .musicbtn-side { 131 | padding-left: 20px; 132 | padding-top: 8px; 133 | padding-bottom: 5px; 134 | } 135 | .musicbtn-side button { 136 | font-size: 17px; 137 | padding-right: 30px; 138 | } 139 | 140 | .musicbtn-side button:hover { 141 | color: #58baf1; 142 | } 143 | .pause-play-side { 144 | color: #ffffff; 145 | } 146 | .pause-play-side:hover { 147 | color: #58baf1; 148 | } 149 | 150 | .time-side { 151 | margin: 20px 65px 0px 65px; 152 | font-size: 60px; 153 | } 154 | .minute-side { 155 | color: #D35D6E; 156 | } 157 | .day-side { 158 | font-size: 16px; 159 | font-weight: bold; 160 | color: #90c861; 161 | } 162 | 163 | .sliders-side slider { 164 | all: unset; 165 | color: #ffd5cd; 166 | } 167 | .slider-vol-side { 168 | margin-top: 10px; 169 | } 170 | 171 | 172 | 173 | .search-side { 174 | border-radius: 12px; 175 | background-color: #272626; 176 | margin: 20px 30px 20px 30px; 177 | } 178 | .search-side:hover { 179 | color: #D35D6E; 180 | } 181 | .sysbtn button { 182 | font-size: 30px; 183 | } 184 | .shutdown-side ~ button:hover { 185 | color: #D35D6E; 186 | } 187 | .shutdown-side{ 188 | color: #D35D6E; 189 | } 190 | .shutdown-side:hover{ 191 | color: #ffd5cd; 192 | } 193 | .reboot-side{ 194 | color: #84afdb; 195 | } 196 | .lock-side{ 197 | color: #ffd5cd; 198 | } 199 | .suspend-side{ 200 | color: #c47eb7; 201 | } 202 | .logout-side{ 203 | color: #90c861; 204 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/eww.yuck: -------------------------------------------------------------------------------- 1 | (defwidget search_full [] 2 | (box :orientation "h" :space-evenly "true" 3 | (button :class "search-full" :onclick "~/bin/launcher.sh" ""))) 4 | (defwidget power_full [] 5 | (box :orientation "h" :space-evenly "true" 6 | (button :class "power-full" :onclick "~/.config/eww/scripts/shutdown.sh" :timeout "60s" ""))) 7 | (defwidget reboot_full [] 8 | (box :orientation "h" :space-evenly "true" 9 | (button :class "reboot-full" :onclick "~/.config/eww/scripts/reboot.sh" :timeout "60s" ""))) 10 | (defwidget lock_full [] 11 | (box :orientation "h" :space-evenly "true" 12 | (button :class "lock-full" :onclick "~/.config/eww/scripts/lockscreen.sh" :timeout "60s" ""))) 13 | (defwidget suspend_full [] 14 | (box :orientation "h" :space-evenly "true" 15 | (button :class "suspend-full" :onclick "~/.config/eww/scripts/suspend.sh" :timeout "60s" ""))) 16 | (defwidget logout_full [] 17 | (box :orientation "h" :space-evenly "true" 18 | (button :class "logout-full" :onclick "~/.config/eww/scripts/logout.sh" :timeout "10s" ""))) 19 | (defwidget close_full [] 20 | (box :orientation "h" :space-evenly "true" 21 | (button :class "power-full" :onclick "~/bin/centerkill" ""))) 22 | 23 | 24 | (defwidget weather [] 25 | (box :orientation "v" :space-evenly "false" 26 | (box :orientation "h" :space-evenly "false" 27 | (box :class "weather-icon" :style "color: ${weather-hex}" {weather-icon}) 28 | (box :class "temperature" "${temperature} ")) 29 | (box :orientation "v" :space-evenly "false" 30 | (box :class "weather-stat" {weather-stat}) 31 | (box :class "weather-quote-head" {weather-quote}) 32 | (box :class "weather-quote-tail" {weather-quote2})))) 33 | 34 | 35 | 36 | 37 | (defwidget player [] 38 | (box :orientation "v" :space-evenly "false" 39 | (box :class "musicart" :style "background-image: url('${cover}');" {art}) 40 | (box :class "musictitle" "${music3}${title}") 41 | (box :class "musicartist" "${music2}${artist}") 42 | (box :orientation "h" :halign "center" :class "musicbtn" :space-evenly "false" 43 | (button :onclick "playerctl previous" "") 44 | (button :onclick "playerctl play-pause" {musicstat}) 45 | (button :onclick "playerctl next" "")) 46 | (box :orientation "h" :class "music-slider" :space-evenly "false" :halign "center" 47 | (scale :min 0 :max 101 :value {musicpos} :active "false")))) 48 | 49 | 50 | (defwidget player_side [] 51 | (box :orientation "h" :space-evenly "false" 52 | (box :class "musicart-side" :style "background-image: url('${cover}');" {art}) 53 | (box :class "musicstuff-side" :orientation "v" :space-evenly "false" 54 | (box :class "musicinfo-side" "${music3}${title}") 55 | (box :orientation "h" :halign "center" :class "musicbtn-side" :space-evenly "false" 56 | (button :onclick "playerctl previous" "") 57 | (button :class "pause-play-side" :onclick "playerctl play-pause" {musicstat}) 58 | (button :onclick "playerctl next" ""))))) 59 | 60 | 61 | ;; Music vars 62 | (defpoll music :interval "5s" "playerctl metadata --format '{{ artist }} - {{ title }}'") 63 | (defpoll music2 :interval "1s" "~/.config/eww/scripts/getartist") 64 | (defpoll music3 :interval "1s" "~/.config/eww/scripts/gettitle") 65 | (defpoll art :interval "2s" "~/.config/eww/scripts/getart") 66 | (defpoll volume :interval "16ms" "~/.config/eww/scripts/getvol") 67 | (defpoll bright :interval "16ms" "~/.config/eww/scripts/getbri") 68 | (defpoll musicstat :interval "1s" "~/.config/eww/scripts/spotifystatus") 69 | (defpoll cover :interval "1s" "~/.config/eww/scripts/echoart") 70 | (defpoll title :interval "1s" "~/.config/eww/scripts/echotitle") 71 | (defpoll artist :interval "1s" "cat /tmp/xmonad/spotify/artist") 72 | (defpoll musicpos :interval "16ms" "~/.config/eww/scripts/getposition") 73 | 74 | ;; Weather vars 75 | (defpoll weather-icon :interval "30s" "cat /tmp/xmonad/weather/weather-icon") 76 | (defpoll temperature :interval "30s" "cat /tmp/xmonad/weather/weather-degree") 77 | (defpoll weather-hex :interval "30s" "cat /tmp/xmonad/weather/weather-hex") 78 | (defpoll weather-quote :interval "30s" "~/.config/eww/scripts/getwethquote") 79 | (defpoll weather-quote2 :interval "30s" "~/.config/eww/scripts/getwethquote2") 80 | (defpoll weather-stat :interval "30s" "cat /tmp/xmonad/weather/weather-stat") 81 | (defpoll weather-stat-side :interval "30s" "~/.config/eww/scripts/weather-trimmer") 82 | 83 | 84 | ;; Main Stuff 85 | ;; (defwindow calendar_full 86 | ;; :geometry (geometry :x "505px" :y "100px" :width "100px" :height "100px") 87 | 88 | ;; 89 | ;; 90 | ;; (calendar_full) 91 | ;; 92 | ;;) 93 | 94 | (defwindow weather 95 | :geometry (geometry :x "1045px" :y "55px" :width "295px" :height "90px" :hexpand "false" :vexpand "false") 96 | (weather)) 97 | 98 | 99 | 100 | (defwindow powermenu :focusable "true" 101 | :geometry (geometry :x "35%" :y "20%" :width "30%" :height "40%") 102 | 103 | 104 | 105 | (powermenu) 106 | 107 | ) 108 | 109 | (defwindow player 110 | :geometry (geometry :x "900px" :y "55px" :width "310px" :height "424px") 111 | (player)) 112 | 113 | (defwindow player_side 114 | :geometry (geometry :x "900px" :y "55px" :width "285px" :height "120px") 115 | (player_side)) 116 | 117 | 118 | 119 | 120 | (defwindow search_full 121 | :geometry (geometry :x "173px" :y "534px" :width "100px" :height "110px") 122 | (search_full)) 123 | (defwindow power_full 124 | :geometry (geometry :x "480px" :y "320px" :width "100px" :height "100px") 125 | (power_full)) 126 | (defwindow reboot_full 127 | :geometry (geometry :x "590px" :y "320px" :width "100px" :height "100px") 128 | (reboot_full)) 129 | (defwindow lock_full 130 | :geometry (geometry :x "700px" :y "320px" :width "100px" :height "100px") 131 | (lock_full)) 132 | (defwindow suspend_full 133 | :geometry (geometry :x "1093px" :y "439px" :width "100px" :height "100px") 134 | (suspend_full)) 135 | (defwindow logout_full 136 | :geometry (geometry :x "810px" :y "320px" :width "100px" :height "100px") 137 | (logout_full)) 138 | (defwindow close_full :geometry (geometry :x "633px" :y "649px" :width "100px" :height "100px") 139 | (close_full)) 140 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/images/bg.png -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/code.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/discord.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/files.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/firefox.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/geany.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/gimp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/telegram.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/terminal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/icons/virtualbox.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/images/image.png -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/music.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/images/music.png -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/pengus-hi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/images/pengus-hi.png -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/images/profile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/eww/images/profile.jpg -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/launch_dashboard: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ## Files and cmd 4 | FILE="$HOME/.cache/eww_launch.dashboard" 5 | CFG="$HOME/.config/eww/dashboard" 6 | EWW=`which eww` 7 | 8 | ## Run eww daemon if not running already 9 | if [[ ! `pidof eww` ]]; then 10 | ${EWW} daemon 11 | sleep 1 12 | fi 13 | 14 | ## Open widgets 15 | run_eww() { 16 | ${EWW} --config "$CFG" open-many \ 17 | 18 | weather 19 | } 20 | 21 | 22 | ## Launch or close widgets accordingly 23 | if [[ ! -f "$FILE" ]]; then 24 | touch "$FILE" 25 | run_eww 26 | else 27 | ${EWW} --config "$CFG" close \ 28 | background profile system clock uptime music github \ 29 | reddit twitter youtube weather apps mail logout sleep reboot poweroff folders 30 | rm "$FILE" 31 | fi 32 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/check-todo: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | todo="$(todo.sh list | head -n -2 | sed -e '/[0-9]\+[[:blank:]]x/d' -e 's/\x1B\[[0-9;]*[JKmsu]//g;/. x 2/d')" 4 | aprinum=$(echo "$todo" | grep "^[[:digit:]]*[[:blank:]](A).*$" | wc -l) 5 | otherprinum=$(echo "$todo" | grep -v "^[[:digit:]]*[[:blank:]](A).*$" | wc -l) 6 | 7 | case $1 in 8 | # (A) priority todo (highest) 9 | apri) 10 | echo "$todo" | grep "^[[:digit:]]*[[:blank:]](A).*$" | sed 's/. (.) //g';; 11 | aprinum) 12 | echo $aprinum ;; 13 | # Other pri 14 | otherpri) 15 | echo "$todo" | grep -v "^[[:digit:]]*[[:blank:]](A).*$" | sed 's/. (.) //g' ;; 16 | otherprinum) 17 | echo $otherprinum ;; 18 | # Adaptive 19 | adaptive) 20 | if [ "$aprinum" -gt 0 ]; then 21 | echo "$todo" | grep "^[[:digit:]]*[[:blank:]](A).*$" | sed 's/. (.) //g' 22 | elif [ "$otherprinum" -gt 0 ]; then 23 | echo "$todo" | grep -v "^[[:digit:]]*[[:blank:]](A).*$" | sed 's/. (.) //g' 24 | else 25 | echo "" 26 | fi 27 | ;; 28 | adaptivenum) 29 | if [ "$aprinum" -gt 0 ]; then 30 | echo $aprinum 31 | elif [ "$otherprinum" -gt 0 ]; then 32 | echo $otherprinum 33 | else 34 | echo "0" 35 | fi 36 | ;; 37 | totnum) 38 | echo "$todo" | wc -l ;; 39 | appoint) # checks next appointment 40 | base="$(calcurse -n | tail -n +2)" 41 | base="${base#"${base%%[![:space:]]*}"}" 42 | echo "${base##*] }" 43 | ;; 44 | appoint-time) 45 | base="$(calcurse -n | tail -n +2)" 46 | time_left="${base#*[}" 47 | echo "${time_left%]*}" | sed -E 's/([[:digit:]]+):0?([[:digit:]]+)/\1h \2min/' 48 | ;; 49 | esac 50 | 51 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/echoart: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo "/tmp/xmonad/spotify/cover.png" 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/echotitle: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cat /tmp/xmonad/spotify/title 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getSongDuration: -------------------------------------------------------------------------------- 1 | #/usr/bin/env sh 2 | mpc status | grep "%)" | awk '{ print $4 }' | awk -F% '{ print $1 }' | awk 'sub(/^.{1}/,"")' -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getart: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | tmp_dir="/tmp/xmonad/spotify" 3 | tmp_cover_path=$tmp_dir/cover.png 4 | 5 | if [ ! -d $tmp_dir ]; then 6 | mkdir -p $tmp_dir 7 | fi 8 | 9 | artlink="$(playerctl metadata mpris:artUrl | sed -e 's/open.spotify.com/i.scdn.co/g')" 10 | 11 | if [ $(playerctl metadata mpris:artUrl) ]; then 12 | curl -s "$artlink" --output $tmp_cover_path; 13 | else cp ~/.config/eww/images/image.png $tmp_cover_path; 14 | fi -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getartist: -------------------------------------------------------------------------------- 1 | #!/bin/zsh 2 | tmp_dir="/tmp/xmonad/spotify" 3 | tmp_artist_path=$tmp_dir/artist 4 | 5 | if [ ! -d $tmp_dir ]; then 6 | mkdir -p $tmp_dir 7 | fi 8 | 9 | artist=$(playerctl metadata --format '{{ artist }}') 10 | echo $artist > $tmp_artist_path 11 | 12 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getbri: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | brightnessctl -m -d intel_backlight | awk -F, '{print substr($4, 0, length($4)-1)}' | tr -d '%' -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getday: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | day_num=$(date "+%u") 3 | 4 | if [ $day_num == 1 ]; then 5 | day="Monday" 6 | elif [ $day_num == 2 ]; then 7 | day="Tuesday" 8 | elif [ $day_num == 3 ]; then 9 | day="Wednesday" 10 | elif [ $day_num == 4 ]; then 11 | day="Thursday" 12 | elif [ $day_num == 5 ]; then 13 | day="Friday" 14 | elif [ $day_num == 6 ]; then 15 | day="Saturday" 16 | else 17 | day="Sunday" 18 | fi 19 | echo $day; 20 | 21 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getposition: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | POSITION=$(playerctl -p mpd position | sed 's/\([a-zA-Z: \t]\)//g' | cut -d . -f 1) 3 | DURATION=$(playerctl metadata mpris:length) 4 | DURSEC=$((DURATION / 1000000)) 5 | echo "scale=2; $POSITION/$DURSEC * 100" | bc | cut -d . -f 1 6 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getquotes: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | tmp_dir="/tmp/xmonad/quotes" 3 | 4 | if [ ! -d $tmp_dir ]; then 5 | mkdir -p $tmp_dir 6 | fi 7 | cp ~/.config/eww/scripts/quotes.json /tmp/xmonad/quotes/ && exec ~/.config/eww/scripts/quotes 8 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getram: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | printf "%.0f\n" $(free -m | grep Mem | awk '{print ($3/$2)*100}') 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/gettitle: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | title=$(playerctl metadata --format '{{ title }}') 3 | count=$(echo -n "$title" | wc -c) 4 | if [ -z "$title" ]; then 5 | echo "Nothing Playing..."; 6 | else 7 | if [ "$count" -le 18 ]; then 8 | echo $title 9 | else 10 | echo $(playerctl metadata --format '{{ title }}' | awk '{print $1, $2}')... 11 | fi 12 | fi 13 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getvol: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | amixer -D pulse sget Master | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%' -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getvpnstat: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | status=$(protonvpn status | head -n1 | awk '{print $2}') 3 | 4 | if [ "$status" == "Connected" ]; then 5 | echo "#90c861" > /tmp/xmonad/vpnstat-hex 6 | else 7 | echo "#D35D6E" > /tmp/xmonad/vpnstat-hex 8 | fi 9 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getweather: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | tmp_weather="/tmp/xmonad/weather" 4 | tmp_weather_stat=$tmp_weather/weather-stat 5 | tmp_weather_degree=$tmp_weather/weather-degree 6 | tmp_weather_quote=$tmp_weather/weather-quote 7 | tmp_weather_hex=$tmp_weather/weather-hex 8 | tmp_weather_icon=$tmp_weather/weather-icon 9 | 10 | if [ ! -d $tmp_weather ]; then 11 | mkdir -p $tmp_weather 12 | fi 13 | 14 | # Put in your api and stuff link here 15 | # If you dunno, head to openweathermap.org, and make and account 16 | #(completely free I swear, and then get your API Key and your City ID) 17 | # I wish I was smart enough to do it like Elena, but this is the top I could do lol 18 | KEY="242dd734dc2d16345dc2a67cfa4e17b3" 19 | ID="1271476" 20 | UNIT="metric" #Options are 'metric' and 'imperial' 21 | weather=$(curl -sf "http://api.openweathermap.org/data/2.5/weather?APPID="$KEY"&id="$ID"&units="$UNIT"") 22 | echo $weather 23 | if [ ! -z "$weather" ]; then 24 | weather_temp=$(echo "$weather" | jq ".main.temp" | cut -d "." -f 1) 25 | weather_icon_code=$(echo "$weather" | jq -r ".weather[].icon" | head -1) 26 | weather_description=$(echo "$weather" | jq -r ".weather[].description" | head -1 | sed -e "s/\b\(.\)/\u\1/g") 27 | 28 | #Big long if statement of doom 29 | if [ "$weather_icon_code" == "50d" ]; then 30 | weather_icon=" " 31 | weather_quote="Forecast says it's misty \nMake sure you don't get lost on your way..." 32 | weather_hex="#84afdb" #a7b8b2 33 | elif [ "$weather_icon_code" == "50n" ]; then 34 | weather_icon=" " 35 | weather_quote="Forecast says it's a misty night \nDon't go anywhere tonight or you might get lost..." 36 | weather_hex="#84afdb" 37 | elif [ "$weather_icon_code" == "01d" ]; then 38 | weather_icon=" " 39 | weather_quote="It's a sunny day, gonna be fun! \nDon't go wandering all by yourself though..." 40 | weather_hex="#ffd86b" 41 | elif [ "$weather_icon_code" == "01n" ]; then 42 | weather_icon=" " 43 | weather_quote="It's a clear night \nYou might want to take a evening stroll to relax..." 44 | weather_hex="#fcdcf6" 45 | elif [ "$weather_icon_code" == "02d" ]; then 46 | weather_icon=" " 47 | weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." 48 | weather_hex="#adadff" 49 | elif [ "$weather_icon_code" == "02n" ]; then 50 | weather_icon=" " 51 | weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" 52 | weather_hex="#adadff" 53 | elif [ "$weather_icon_code" == "03d" ]; then 54 | weather_icon=" " 55 | weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." 56 | weather_hex="#adadff" 57 | elif [ "$weather_icon_code" == "03n" ]; then 58 | weather_icon=" " 59 | weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" 60 | weather_hex="#adadff" 61 | elif [ "$weather_icon_code" == "04d" ]; then 62 | weather_icon=" " 63 | weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." 64 | weather_hex="#adadff" 65 | elif [ "$weather_icon_code" == "04n" ]; then 66 | weather_icon=" " 67 | weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" 68 | weather_hex="#adadff" 69 | elif [ "$weather_icon_code" == "09d" ]; then 70 | weather_icon=" " 71 | weather_quote="It's rainy, it's a great day! \nGet some ramen and watch as the rain falls..." 72 | weather_hex="#6b95ff" 73 | elif [ "$weather_icon_code" == "09n" ]; then 74 | weather_icon=" " 75 | weather_quote=" It's gonna rain tonight it seems \nMake sure your clothes aren't still outside..." 76 | weather_hex="#6b95ff" 77 | elif [ "$weather_icon_code" == "10d" ]; then 78 | weather_icon=" " 79 | weather_quote="It's rainy, it's a great day! \nGet some ramen and watch as the rain falls..." 80 | weather_hex="#6b95ff" 81 | elif [ "$weather_icon_code" == "10n" ]; then 82 | weather_icon=" " 83 | weather_quote=" It's gonna rain tonight it seems \nMake sure your clothes aren't still outside..." 84 | weather_hex="#6b95ff" 85 | elif [ "$weather_icon_code" == "11d" ]; then 86 | weather_icon="" 87 | weather_quote="There's storm for forecast today \nMake sure you don't get blown away..." 88 | weather_hex="#ffeb57" 89 | elif [ "$weather_icon_code" == "11n" ]; then 90 | weather_icon="" 91 | weather_quote="There's gonna be storms tonight \nMake sure you're warm in bed and the windows are shut..." 92 | weather_hex="#ffeb57" 93 | elif [ "$weather_icon_code" == "13d" ]; then 94 | weather_icon=" " 95 | weather_quote="It's gonna snow today \nYou'd better wear thick clothes and make a snowman as well!" 96 | weather_hex="#e3e6fc" 97 | elif [ "$weather_icon_code" == "13n" ]; then 98 | weather_icon=" " 99 | weather_quote="It's gonna snow tonight \nMake sure you get up early tomorrow to see the sights..." 100 | weather_hex="#e3e6fc" 101 | elif [ "$weather_icon_code" == "40d" ]; then 102 | weather_icon=" " 103 | weather_quote="Forecast says it's misty \nMake sure you don't get lost on your way..." 104 | weather_hex="#84afdb" 105 | elif [ "$weather_icon_code" == "40n" ]; then 106 | weather_icon=" " 107 | weather_quote="Forecast says it's a misty night \nDon't go anywhere tonight or you might get lost..." 108 | weather_hex="#84afdb" 109 | else 110 | weather_icon=" " 111 | weather_quote="Sort of odd, I don't know what to forecast \nMake sure you have a good time!" 112 | weather_hex="#adadff" 113 | fi 114 | echo "$weather_icon" > $tmp_weather_icon 115 | echo "$weather_description" > $tmp_weather_stat 116 | echo "$weather_temp""°C" > $tmp_weather_degree 117 | echo "$weather_quote" > $tmp_weather_quote 118 | echo "$weather_hex" > $tmp_weather_hex 119 | else 120 | echo "Weather Unavailable" > $tmp_weather_stat 121 | echo " " > $tmp_weather_icon 122 | echo "Ah well, no weather huh? \nEven if there's no weather, it's gonna be a great day!" > $tmp_weather_quote 123 | echo "-" > $tmp_weather_degree 124 | echo "#adadff" > $tmp_weather_hex 125 | fi 126 | 127 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getwethquote: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | echo -e $(cat /tmp/xmonad/weather/weather-quote) | head -n1 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/getwethquote2: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | echo -e $(cat /tmp/xmonad/weather/weather-quote) | tail -n1 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l1: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $(ls ~/ | awk '{print $1}' | head -n1 | tail -n1) 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l1-processed: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | var=$(ls ~/ | awk '{print $1}' | head -n1 | tail -n1 | sed -e "s/\b\(.\)/\u\1/g") 3 | count=$(echo $var | wc -c) 4 | 5 | 6 | if [ "$count" -lt 11 ]; then 7 | echo $var 8 | else 9 | echo $(echo $var | cut -c1-7)... 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l2: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $(ls ~/ | awk '{print $1}' | head -n2 | tail -n1) 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l2-processed: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | var=$(ls ~/ | awk '{print $1}' | head -n2 | tail -n1 | sed -e "s/\b\(.\)/\u\1/g") 3 | count=$(echo $var | wc -c) 4 | 5 | 6 | if [ "$count" -lt 11 ]; then 7 | echo $var 8 | else 9 | echo $(echo $var | cut -c1-7)... 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l3: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $(ls ~/ | awk '{print $1}' | head -n3 | tail -n1) 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l3-processed: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | var=$(ls ~/ | awk '{print $1}' | head -n3 | tail -n1 | sed -e "s/\b\(.\)/\u\1/g") 3 | count=$(echo $var | wc -c) 4 | 5 | 6 | if [ "$count" -lt 11 ]; then 7 | echo $var 8 | else 9 | echo $(echo $var | cut -c1-7)... 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l4: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $(ls ~/ | awk '{print $1}' | head -n4 | tail -n1) 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l4-processed: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | var=$(ls ~/ | awk '{print $1}' | head -n4 | tail -n1 | sed -e "s/\b\(.\)/\u\1/g") 3 | count=$(echo $var | wc -c) 4 | 5 | 6 | if [ "$count" -lt 11 ]; then 7 | echo $var 8 | else 9 | echo $(echo $var | cut -c1-7)... 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l5: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $(ls ~/ | awk '{print $1}' | head -n5 | tail -n1) 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l5-processed: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | var=$(ls ~/ | awk '{print $1}' | head -n5 | tail -n1 | sed -e "s/\b\(.\)/\u\1/g") 3 | count=$(echo $var | wc -c) 4 | 5 | 6 | if [ "$count" -lt 11 ]; then 7 | echo $var 8 | else 9 | echo $(echo $var | cut -c1-7)... 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l6: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo $(ls ~/ | awk '{print $1}' | head -n6 | tail -n1) 3 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/home-dir/l6-processed: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | var=$(ls ~/ | awk '{print $1}' | head -n6 | tail -n1 | sed -e "s/\b\(.\)/\u\1/g") 3 | count=$(echo $var | wc -c) 4 | 5 | 6 | if [ "$count" -lt 11 ]; then 7 | echo $var 8 | else 9 | echo $(echo $var | cut -c1-7)... 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/lockscreen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | playerctl pause & 3 | amixer set Master mute & 4 | betterlockscreen -u ~/Wallpapers --fx pixel -l 5 | 6 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/logout.sh: -------------------------------------------------------------------------------- 1 | # Confirmation 2 | dir="~/.config/rofi/powermenu" 3 | confirm_exit() { 4 | rofi -dmenu\ 5 | -i\ 6 | -no-fixed-num-lines\ 7 | -p "Are You Sure? : "\ 8 | -theme $dir/confirm.rasi 9 | } 10 | 11 | # Message 12 | msg() { 13 | rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" 14 | } 15 | 16 | ans=$(confirm_exit &) 17 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 18 | killall bspwm 19 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 20 | exit 0 21 | else 22 | msg 23 | fi 24 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/msclip.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | sel_fail() { 4 | notify-send -i flameshot 'Screenshot' 'Failed to take screenshot' 5 | exit 1 6 | } 7 | 8 | case $1 in 9 | -c | copy) 10 | file=/tmp/$(date +%d-%m-%Y_%H-%M-%S).png 11 | maim -us | tee $file | 12 | xclip -selection clipboard -t image/png 13 | feh -U $file 14 | if [ $? -eq 0 ]; then 15 | notify-send --icon=$file 'Screenshot' 'Screenshot copied' 16 | rm $file 17 | else sel_fail 18 | fi 19 | ;; 20 | -s | save) 21 | file=$HOME/Desktop/Screenshots/$(date +%d-%m-%Y_%H-%M-%S).png 22 | maim -us | tee $file | 23 | xclip -selection clipboard -t image/png 24 | feh -U $file 25 | if [ $? -eq 0 ]; then 26 | notify-send --icon=$file 'Screenshot' 'Screenshot saved' 27 | else 28 | sel_fail 29 | rm $file 30 | fi 31 | ;; 32 | *) 33 | echo "Take screenshots with maim" 34 | echo "---------------------------" 35 | echo "options:" 36 | echo "-c, copy Take screenshot and copy it" 37 | echo "-s, save Take screenshot of desired region or window and save" 38 | echo "-h, help Display all available options" 39 | ;; 40 | esac 41 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/music: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # ╔╦╗ ╦ ╦ ╔═╗ ╦ ╔═╗ 4 | # ║║║ ║ ║ ╚═╗ ║ ║ 5 | # ╩ ╩ ╚═╝ ╚═╝ ╩ ╚═╝ 6 | 7 | # author Niraj 8 | # github niraj998 9 | 10 | # ┌─┐┌─┐┌┐┌┌─┐┬┌─┐┬ ┬┬─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐ 11 | # │ │ ││││├┤ ││ ┬│ │├┬┘├─┤ │ ││ ││││└─┐ 12 | # └─┘└─┘┘└┘└ ┴└─┘└─┘┴└─┴ ┴ ┴ ┴└─┘┘└┘└─┘ 13 | 14 | # uncomment your music players below. 15 | # 16 | 17 | Control="MPD" 18 | [ -n "$(pgrep spotify)" ] && Control="spotify" 19 | # [ -n "$(pgrep rhythmbox)" ] && Control="rhythmbox" 20 | # [ -n "$(pgrep audacious)" ] && Control="audacious" 21 | # [ -n "$(pgrep clementine)" ] && Control="clementine" 22 | # [ -n "$(pgrep strawberry)" ] && Control="strawberry" 23 | 24 | 25 | 26 | # saves covers here 27 | Cover=/tmp/cover.png 28 | # if cover not found in metadata use this instead 29 | bkpCover=~/.config/eww/dashboard/assets/fallback.png 30 | # mpd music directory 31 | mpddir=~/Music 32 | 33 | # ┌─┐┬ ┌─┐┬ ┬┌─┐┬─┐┌─┐┌┬┐┬ ┌─┐┌─┐┬─┐┬┌─┐┌┬┐┌─┐ 34 | # ├─┘│ ├─┤└┬┘├┤ ├┬┘│ │ │ └─┐│ ├┬┘│├─┘ │ └─┐ 35 | # ┴ ┴─┘┴ ┴ ┴ └─┘┴└─└─┘ ┴ ┴─┘ └─┘└─┘┴└─┴┴ ┴ └─┘ 36 | 37 | ########################## Title ########################## 38 | title() { 39 | title=$(playerctl --player=$Control metadata --format {{title}}) 40 | [ -z "$title" ] && title="Nothing Playing" 41 | echo "$title" 42 | } 43 | 44 | ########################## Artist ########################## 45 | artist() { 46 | artist=$(playerctl --player=$Control metadata --format {{artist}}) 47 | [ -z "$artist" ] && artist="Offline" 48 | echo "$artist" 49 | } 50 | 51 | ########################## Album ########################## 52 | album() { 53 | album=$(playerctl --player=$Control metadata --format {{album}}) 54 | [ -z "$album" ] && album="Album" 55 | echo "$album" 56 | } 57 | 58 | ########################## Status ########################## 59 | status() { 60 | status=$(playerctl --player=$Control status) 61 | [ -z "$status" ] && status="Stopped" 62 | echo "$status" 63 | } 64 | 65 | ########################## Time ########################## 66 | ctime() { 67 | time=$(playerctl --player=$Control position --format "{{ duration(position) }}") 68 | [ -z "$time" ] && time="0:00" 69 | echo "$time" 70 | } 71 | 72 | ########################## Length ########################## 73 | length() { 74 | length=$(playerctl --player=$Control metadata --format "{{ duration(mpris:length) }}") 75 | [ -z "$length" ] && length="0:00" 76 | echo "$length" 77 | } 78 | 79 | ########################## trackNumber ########################## 80 | playlist() { 81 | playlist=$(playerctl --player=$Control metadata xesam:trackNumber) 82 | [ -z "$playlist" ] && playlist="0" 83 | echo "$playlist" 84 | } 85 | 86 | ########################## Cover ########################## 87 | cover() { 88 | albumart="$(playerctl --player=$Control metadata mpris:artUrl | sed -e 's/open.spotify.com/i.scdn.co/g')" 89 | [ $(playerctl --player=$Control metadata mpris:artUrl) ] && curl -s "$albumart" --output $Cover || cp $bkpCover $Cover 90 | echo "$Cover" 91 | } 92 | 93 | ########################## Statusicon ########################## 94 | statusicon() { 95 | icon="" 96 | [ $(playerctl --player=$Control status) = "Playing" ] && icon="" 97 | [ $(playerctl --player=$Control status) = "Paused" ] && icon="" 98 | echo "$icon" 99 | } 100 | 101 | ########################## Lyrics ########################## 102 | lyrics() { 103 | Title=$(playerctl --player=$Control metadata --format {{title}}) 104 | Artist=$(playerctl --player=$Control metadata --format {{artist}}) 105 | URL="https://api.lyrics.ovh/v1/$Artist/$Title" 106 | lyrics=$(curl -s "$( echo "$URL" | sed s/" "/%20/g | sed s/"&"/%26/g | sed s/,/%2C/g | sed s/-/%2D/g)" | jq '.lyrics' ) 107 | [ "$lyrics" = "null" ] && lyrics=$( curl -s --get "https://makeitpersonal.co/lyrics" --data-urlencode "artist=$Artist" --data-urlencode "title=$Title") 108 | printf "$lyrics" | less 109 | } 110 | 111 | # ┌┬┐┌─┐┌┬┐ ┌─┐┌─┐┬─┐┬┌─┐┌┬┐┌─┐ 112 | # │││├─┘ ││ └─┐│ ├┬┘│├─┘ │ └─┐ 113 | # ┴ ┴┴ ─┴┘ └─┘└─┘┴└─┴┴ ┴ └─┘ 114 | 115 | ########################## Title ########################## 116 | mpctitle() { 117 | title=$(mpc -f %title% current) 118 | [ -z "$title" ] && title="Nothing Playing" 119 | echo "$title" 120 | } 121 | 122 | ########################## Artist ########################## 123 | mpcartist() { 124 | artist=$(mpc -f %artist% current) 125 | [ -z "$artist" ] && artist="Offline" 126 | echo "$artist" 127 | } 128 | 129 | ########################## Album ########################## 130 | mpcalbum() { 131 | album=$(mpc -f %album% current) 132 | [ -z "$album" ] && album="Album" 133 | echo "$album" 134 | } 135 | 136 | ########################## Cover ########################## 137 | mpccover() { 138 | ffmpeg -i "$mpddir"/"$(mpc current -f %file%)" "${Cover}" -y || cp $bkpCover $Cover 139 | echo "$Cover" && exit 140 | } 141 | 142 | ########################## Time ########################## 143 | mpctime() { 144 | time=$(mpc status %currenttime%) 145 | [ -z "$time" ] && time="0:00" 146 | echo "$time" 147 | } 148 | 149 | ########################## Length ########################## 150 | mpclength() { 151 | length=$(mpc status %totaltime%) 152 | [ -z "$length" ] && length="0:00" 153 | echo "$length" 154 | } 155 | 156 | ########################## Icon ########################## 157 | mpcicon() { 158 | status=$(mpc status | head -2 | tail -1 | cut -c2-7 ) 159 | icon="" 160 | [ "$status" = "playin" ] && icon="" 161 | [ "$status" = "paused" ] && icon="" 162 | echo "$icon" 163 | } 164 | 165 | ########################## Status ########################## 166 | mpcstatus() { 167 | stat=$(mpc status | head -2 | tail -1 | cut -c2-7 ) 168 | status="Stopped" 169 | [ "$stat" = "playin" ] && status="Playing" 170 | [ "$stat" = "paused" ] && status="Paused" 171 | echo "$status" 172 | } 173 | 174 | ########################## Percent ########################## 175 | mpcperc() { 176 | perc=$(mpc status %percenttime%) 177 | [ -z "$perc" ] && perc="0" 178 | echo "$perc" 179 | } 180 | 181 | ########################## Playlist ########################## 182 | mpcsongpos() { 183 | pos=$(mpc status %songpos%) 184 | allsongs=$(mpc status %length%) 185 | playlist="$pos/$allsongs" 186 | [ -z "$pos" ] && playlist="0/0" 187 | echo "$playlist" 188 | } 189 | 190 | ########################## Lyrics ########################## 191 | mpclyrics() { 192 | Title=$(mpc -f %title% current) 193 | Artist=$(mpc -f %artist% current) 194 | URL="https://api.lyrics.ovh/v1/$Artist/$Title" 195 | lyrics=$(curl -s "$( echo "$URL" | sed s/" "/%20/g | sed s/"&"/%26/g | sed s/,/%2C/g | sed s/-/%2D/g)" | jq '.lyrics' ) 196 | [ "$lyrics" = "null" ] && lyrics=$( curl -s --get "https://makeitpersonal.co/lyrics" --data-urlencode "artist=$Artist" --data-urlencode "title=$Title") 197 | printf "$lyrics" | less 198 | } 199 | 200 | # ┬ ┬┌─┐┬ ┌─┐ 201 | # ├─┤├┤ │ ├─┘ 202 | # ┴ ┴└─┘┴─┘┴ 203 | 204 | doc() { 205 | echo "Usage: 206 | music [Options] 207 | 208 | Options: 209 | previous previous song 210 | next next song 211 | toggle toggle between play-pause song 212 | title shows title of current song 213 | album shows album of current song 214 | artist shows artist of current song 215 | status music status (playing/paused/stopped) 216 | statusicon music status icons (playing/paused/stopped) 217 | coverloc saves cover and shows location to cover of current song 218 | showcover opens cover using feh 219 | time shows current time of song 220 | length shows length of song 221 | percent shows percent song 222 | playlist shows playlist position of current song 223 | lyrics shows lyrics" 224 | } 225 | 226 | # ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐ 227 | # │ │├─┘ │ ││ ││││└─┐ 228 | # └─┘┴ ┴ ┴└─┘┘└┘└─┘ 229 | 230 | case $Control in 231 | MPD) 232 | case $1 in 233 | next) mpc -q next ;; 234 | previous) mpc -q prev ;; 235 | toggle) mpc -q toggle ;; 236 | title) mpctitle ;; 237 | artist) mpcartist ;; 238 | album) mpcalbum ;; 239 | status) mpcstatus ;; 240 | statusicon) mpcicon ;; 241 | player) echo "$Control" ;; 242 | coverloc) mpccover ;; 243 | showcover) mpccover | xargs feh ;; 244 | time) mpctime ;; 245 | length) mpclength ;; 246 | percent) mpcperc ;; 247 | playlist) mpcsongpos ;; 248 | lyrics) mpclyrics ;; 249 | *) doc ;; 250 | esac 251 | ;; 252 | *) 253 | case $1 in 254 | next) playerctl --player=$Control next ;; 255 | previous) playerctl --player=$Control previous ;; 256 | toggle) playerctl --player=$Control play-pause ;; 257 | title) title ;; 258 | artist) artist ;; 259 | album) album ;; 260 | status) status ;; 261 | statusicon) statusicon ;; 262 | player) echo "$Control" ;; 263 | coverloc) cover ;; 264 | showcover) cover | xargs feh ;; 265 | time) ctime ;; 266 | length) length ;; 267 | percent) echo "0" ;; 268 | playlist) playlist ;; 269 | lyrics) lyrics ;; 270 | *) doc ;; 271 | esac 272 | esac 2>/dev/null 273 | 274 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/open_apps: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ## Open Applications 4 | FILE="$HOME/.cache/eww_launch.xyz" 5 | EWW="$HOME/.local/bin/eww -c $HOME/.config/eww/dashboard" 6 | cmd="xdg-open" 7 | 8 | if [[ "$1" == "--firefox" ]]; then 9 | ${EWW} close-all && rm -rf "$FILE" && firefox & 10 | 11 | elif [[ "$1" == "--telegram" ]]; then 12 | ${EWW} close-all && rm -rf "$FILE" && telegram-desktop & 13 | 14 | elif [[ "$1" == "--github" ]]; then 15 | ${EWW} close-all && rm -rf "$FILE" && $cmd "https://github.com" & 16 | 17 | elif [[ "$1" == "--reddit" ]]; then 18 | ${EWW} close-all && rm -rf "$FILE" && $cmd "https://reddit.com" & 19 | 20 | elif [[ "$1" == "--code" ]]; then 21 | ${EWW} close-all && rm -rf "$FILE" && code & 22 | 23 | elif [[ "$1" == "--discord" ]]; then 24 | ${EWW} close-all && rm -rf "$FILE" && discord & 25 | 26 | elif [[ "$1" == "--spotify" ]]; then 27 | ${EWW} close-all && rm -rf "$FILE" && spotify & 28 | fi 29 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/powermenu.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Author : Aditya Shakya 4 | ## Mail : adi1090x@gmail.com 5 | ## Github : @adi1090x 6 | ## Twitter : @adi1090x 7 | 8 | # Available Styles 9 | # >> Created and tested on : rofi 1.6.0-1 10 | # 11 | # column_circle column_square column_rounded column_alt 12 | # card_circle card_square card_rounded card_alt 13 | # dock_circle dock_square dock_rounded dock_alt 14 | # drop_circle drop_square drop_rounded drop_alt 15 | # full_circle full_square full_rounded full_alt 16 | # row_circle row_square row_rounded row_alt 17 | 18 | theme="card_circle" 19 | dir="$HOME/.config/rofi/powermenu" 20 | 21 | # random colors 22 | #styles=($(ls -p --hide="colors.rasi" $dir/styles)) 23 | #color="${styles[$(( $RANDOM % 8 ))]}" 24 | 25 | # comment this line to disable random colors 26 | #sed -i -e "s/@import .*/@import \"$color\"/g" $dir/styles/colors.rasi 27 | 28 | # comment these lines to disable random style 29 | #themes=($(ls -p --hide="powermenu.sh" --hide="styles" --hide="confirm.rasi" --hide="message.rasi" $dir)) 30 | #theme="${themes[$(( $RANDOM % 24 ))]}" 31 | 32 | uptime=$(uptime -p | sed -e 's/up //g') 33 | 34 | rofi_command="rofi -theme $dir/$theme" 35 | 36 | # Options 37 | shutdown="" 38 | reboot="" 39 | lock="" 40 | suspend="" 41 | logout="" 42 | 43 | # Confirmation 44 | confirm_exit() { 45 | rofi -dmenu\ 46 | -i\ 47 | -no-fixed-num-lines\ 48 | -p "Are You Sure? : "\ 49 | -theme $dir/confirm.rasi 50 | } 51 | 52 | # Message 53 | msg() { 54 | rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" 55 | } 56 | 57 | # Variable passed to rofi 58 | options="$shutdown\n$reboot\n$lock\n$suspend\n$logout" 59 | 60 | chosen="$(echo -e "$options" | $rofi_command -p "Uptime: $uptime" -dmenu -selected-row 2)" 61 | case $chosen in 62 | $shutdown) 63 | ans=$(confirm_exit &) 64 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 65 | systemctl poweroff 66 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 67 | exit 0 68 | else 69 | msg 70 | fi 71 | ;; 72 | $reboot) 73 | ans=$(confirm_exit &) 74 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 75 | systemctl reboot 76 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 77 | exit 0 78 | else 79 | msg 80 | fi 81 | ;; 82 | $lock) 83 | betterlockscreen -l 84 | ;; 85 | $suspend) 86 | ans=$(confirm_exit &) 87 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 88 | playerctl pause 89 | amixer set Master mute 90 | systemctl suspend 91 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 92 | exit 0 93 | else 94 | msg 95 | fi 96 | ;; 97 | $logout) 98 | ans=$(confirm_exit &) 99 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 100 | session=`loginctl session-status | head -n 1 | awk '{print $1}'` 101 | loginctl terminate-session $session 102 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 103 | exit 0 104 | else 105 | msg 106 | fi 107 | ;; 108 | esac 109 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/quote-trimmer: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | quote=$(cat /tmp/xmonad/quotes/quote) 3 | qc=$(cat /tmp/xmonad/quotes/quote | wc -c) 4 | if [ "$qc" -le 58 ]; then 5 | echo "" > /tmp/xmonad/quotes/quote-tail 6 | else 7 | printf '%s\n' "${quote:0:${#quote}/2}" > /tmp/xmonad/quotes/quote 8 | printf '%s\n' "${quote:${#quote}/2}" > /tmp/xmonad/quotes/quote-tail 9 | fi 10 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/quotes: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | num=$(echo $((1 + $RANDOM % 500))) 3 | 4 | cat /tmp/xmonad/quotes/quotes.json | jq --arg num "$num" ".[$num]" | jq -r ".text" > /tmp/xmonad/quotes/quote 5 | cat /tmp/xmonad/quotes/quotes.json | jq --arg num "$num" ".[$num]" | jq -r ".author" > /tmp/xmonad/quotes/author 6 | 7 | quote=$(cat /tmp/xmonad/quotes/quote) 8 | qc=$(cat /tmp/xmonad/quotes/quote | wc -c) 9 | rm /tmp/xmonad/quotes/quote 10 | rm /tmp/xmonad/quotes/quote-tail 11 | if [ "$qc" -le 58 ]; then 12 | echo "$quote" > /tmp/xmonad/quotes/quote 13 | echo "" > /tmp/xmonad/quotes/quote-tail 14 | else 15 | printf '%s\n' "${quote:0:${#quote}/2}" > /tmp/xmonad/quotes/quote 16 | printf '%s\n' "${quote:${#quote}/2}" > /tmp/xmonad/quotes/quote-tail 17 | fi 18 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/reboot.sh: -------------------------------------------------------------------------------- 1 | # Confirmation 2 | dir="~/.config/rofi/powermenu" 3 | confirm_exit() { 4 | rofi -dmenu\ 5 | -i\ 6 | -no-fixed-num-lines\ 7 | -p "Are You Sure? : "\ 8 | -theme $dir/confirm.rasi 9 | } 10 | 11 | # Message 12 | msg() { 13 | rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" 14 | } 15 | 16 | ans=$(confirm_exit &) 17 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 18 | systemctl reboot 19 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 20 | exit 0 21 | else 22 | msg 23 | fi 24 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/shutdown.sh: -------------------------------------------------------------------------------- 1 | # Confirmation 2 | dir="~/.config/rofi/powermenu" 3 | confirm_exit() { 4 | rofi -dmenu\ 5 | -i\ 6 | -no-fixed-num-lines\ 7 | -p "Are You Sure? : "\ 8 | -theme $dir/confirm.rasi 9 | } 10 | 11 | # Message 12 | msg() { 13 | rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" 14 | } 15 | 16 | ans=$(confirm_exit &) 17 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 18 | systemctl poweroff 19 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 20 | exit 0 21 | else 22 | msg 23 | fi 24 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/spotifystatus: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # A dwm_bar function that shows the current artist, track, duration, and status from Spotify using playerctl 4 | # Joe Standring 5 | # GNU GPLv3 6 | 7 | # Dependencies: spotify/spotifyd, playerctl 8 | 9 | # NOTE: The official spotify client does not provide the track position or shuffle status through playerctl. This does work through spotifyd however. 10 | 11 | if ps -C spotify > /dev/null; then 12 | PLAYER="spotify" 13 | elif ps -C spotifyd > /dev/null; then 14 | PLAYER="spotifyd" 15 | fi 16 | 17 | if [ "$PLAYER" = "spotify" ] || [ "$PLAYER" = "spotifyd" ]; then 18 | ARTIST=$(playerctl metadata artist) 19 | TRACK=$(playerctl metadata title) 20 | POSITION=$(playerctl position | sed 's/..\{6\}$//') 21 | DURATION=$(playerctl metadata mpris:length | sed 's/.\{6\}$//') 22 | STATUS=$(playerctl -p spotify status) 23 | SHUFFLE=$(playerctl shuffle) 24 | 25 | if [ "$STATUS" = "Playing" ]; then 26 | STATUS="" 27 | else 28 | STATUS="" 29 | fi 30 | 31 | if [ "$SHUFFLE" = "On" ]; then 32 | SHUFFLE=" " 33 | else 34 | SHUFFLE="" 35 | fi 36 | 37 | 38 | if [ "$PLAYER" = "spotify" ]; then 39 | printf "$STATUS" 40 | else 41 | printf "%s%s %s - %s " "$SEP1" "$STATUS" "$ARTIST" "$TRACK" 42 | printf "%0d:%02d/" $((POSITION%3600/60)) $((POSITION%60)) 43 | printf "%0d:%02d" $((DURATION%3600/60)) $((DURATION%60)) 44 | printf "%s%s" "$SHUFFLE" "$SEP2" 45 | fi 46 | fi 47 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/suspend.sh: -------------------------------------------------------------------------------- 1 | # Confirmation 2 | dir="~/.config/rofi/powermenu" 3 | confirm_exit() { 4 | rofi -dmenu\ 5 | -i\ 6 | -no-fixed-num-lines\ 7 | -p "Are You Sure? : "\ 8 | -theme $dir/confirm.rasi 9 | } 10 | 11 | # Message 12 | msg() { 13 | rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" 14 | } 15 | 16 | ans=$(confirm_exit &) 17 | if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then 18 | killall eww 19 | systemctl suspend 20 | betterlockscreen -l 21 | elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then 22 | exit 0 23 | else 24 | msg 25 | fi 26 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/sys_info: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ## Files and Data 4 | PREV_TOTAL=0 5 | PREV_IDLE=0 6 | cpuFile="/tmp/.cpu_usage" 7 | 8 | ## Get CPU usage 9 | get_cpu() { 10 | if [[ -f "${cpuFile}" ]]; then 11 | fileCont=$(cat "${cpuFile}") 12 | PREV_TOTAL=$(echo "${fileCont}" | head -n 1) 13 | PREV_IDLE=$(echo "${fileCont}" | tail -n 1) 14 | fi 15 | 16 | CPU=(`cat /proc/stat | grep '^cpu '`) # Get the total CPU statistics. 17 | unset CPU[0] # Discard the "cpu" prefix. 18 | IDLE=${CPU[4]} # Get the idle CPU time. 19 | 20 | # Calculate the total CPU time. 21 | TOTAL=0 22 | 23 | for VALUE in "${CPU[@]:0:4}"; do 24 | let "TOTAL=$TOTAL+$VALUE" 25 | done 26 | 27 | if [[ "${PREV_TOTAL}" != "" ]] && [[ "${PREV_IDLE}" != "" ]]; then 28 | # Calculate the CPU usage since we last checked. 29 | let "DIFF_IDLE=$IDLE-$PREV_IDLE" 30 | let "DIFF_TOTAL=$TOTAL-$PREV_TOTAL" 31 | let "DIFF_USAGE=(1000*($DIFF_TOTAL-$DIFF_IDLE)/$DIFF_TOTAL+5)/10" 32 | echo "${DIFF_USAGE}" 33 | else 34 | echo "?" 35 | fi 36 | 37 | # Remember the total and idle CPU times for the next check. 38 | echo "${TOTAL}" > "${cpuFile}" 39 | echo "${IDLE}" >> "${cpuFile}" 40 | } 41 | 42 | ## Get Used memory 43 | get_mem() { 44 | printf "%.0f\n" $(free -m | grep Mem | awk '{print ($3/$2)*100}') 45 | } 46 | 47 | ## Get Battery Capacity 48 | get_bat(){ 49 | BAT=`ls /sys/class/power_supply | grep BAT | head -n 1` 50 | cat /sys/class/power_supply/${BAT}/capacity 51 | } 52 | 53 | ## Get Current Brightness 54 | get_bright(){ 55 | brightnessctl -m -d amdgpu_bl0 | awk -F, '{print substr($4, 0, length($4)-1)}' | tr -d '%' 56 | } 57 | 58 | ## Get Current Volume 59 | get_vol(){ 60 | amixer -D pulse sget Master | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%' 61 | } 62 | 63 | ## Execute accordingly 64 | if [[ "$1" == "--cpu" ]]; then 65 | get_cpu 66 | elif [[ "$1" == "--mem" ]]; then 67 | get_mem 68 | elif [[ "$1" == "--bat" ]]; then 69 | get_bat 70 | elif [[ "$1" == "--bri" ]]; then 71 | get_bright 72 | elif [[ "$1" == "--vol" ]]; then 73 | get_vol 74 | fi 75 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/task: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | case $1 in 4 | up) # deals with uptime less than a minute, where the command `uptime` doesn't work 5 | time="$(uptime -p )" 6 | time="${time/up }" 7 | time="${time/ day,/d}" 8 | time="${time/ days,/d}" 9 | time="${time/ hours,/h}" 10 | time="${time/ minutes/m}" 11 | echo ${time:-'less than a minute'} 12 | ;; 13 | cpuavg) # avg cpu load since the cpu started 14 | grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}' ;; 15 | disk) # disk space of the root partition 16 | percent_used="$(df -h / | tail -n -1 | awk '{ print $4 "\t" }')" 17 | df -h / | tail -n -1 | awk '{ print $3" / "$4 }' 18 | ;; 19 | mem) # source: https://github.com/KittyKatt/screenFetch/issues/386#issuecomment-249312716 20 | while IFS=":" read -r a b; do 21 | case $a in 22 | "MemTotal") ((mem_used+=${b/kB})); mem_total="${b/kB}" ;; 23 | "Shmem") ((mem_used+=${b/kB})) ;; 24 | "MemFree" | "Buffers" | "Cached" | "SReclaimable") 25 | mem_used="$((mem_used-=${b/kB}))" 26 | ;; 27 | esac 28 | done < /proc/meminfo 29 | 30 | echo "$((mem_used / 1024))kb / $((mem_total / 1024))kb" 31 | ;; 32 | esac 33 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/vpntoggle: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | status=$(protonvpn status | head -n1 | awk '{print $2}') 3 | 4 | if [ "$status" == "Connected" ]; then 5 | alacritty -e sudo protonvpn d 6 | echo "#90c861" > /tmp/xmonad/vpnstat-hex 7 | else 8 | alacritty -e sudo protonvpn c 9 | echo "#D35D6E" > /tmp/xmonad/vpnstat-hex 10 | fi 11 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/scripts/weather-trimmer: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | weather=$(cat /tmp/xmonad/weather/weather-stat) 3 | weather_count=$(cat /tmp/xmonad/weather/weather-stat | wc -c) 4 | 5 | if [ "$weather_count" -lt 10 ]; then 6 | echo $weather; 7 | else 8 | echo $(cat /tmp/xmonad/weather/weather-stat | cut -c1-6)... 9 | fi 10 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/index.scss: -------------------------------------------------------------------------------- 1 | *{ 2 | all: unset; 3 | } 4 | 5 | .dashboard{ 6 | padding: 1rem; 7 | } 8 | 9 | button:hover{ 10 | color: $blue; 11 | } -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/variables.scss: -------------------------------------------------------------------------------- 1 | $background: #1A1B26; 2 | $background-alt: #16161E; 3 | $background-alt2: #1E202E; 4 | $foreground: #a9b1d6; 5 | $red: #F7768E; 6 | $yellow: #E0AF68; 7 | $orange: #FF9E64; 8 | $green: #9ECE6A; 9 | $blue: #7AA2F7; 10 | $blue2: #88AFFF; 11 | $magenta: #BB9AF7; 12 | $cyan: #73DACA; -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/applications.scss: -------------------------------------------------------------------------------- 1 | .applications{ 2 | background-color: $background; 3 | color: $foreground; 4 | border-radius: 12px; 5 | margin: .5rem; 6 | padding: 1rem; 7 | } 8 | .app-firefox, 9 | .app-reddit, 10 | .app-telegram, 11 | .app-github, 12 | .app-code, 13 | .app-discord, 14 | .app-spotify{ 15 | padding: 1rem; 16 | } 17 | .app-firefox, 18 | .app-discord{ 19 | font-family: "Font Awesome 5 Free"; 20 | font-size: 2.9em; 21 | } 22 | .app-discord{ 23 | font-size: 2.6em; 24 | } 25 | .app-code, 26 | .app-reddit, 27 | .app-telegram, 28 | .app-github, 29 | .app-spotify{ 30 | font-family: JetBrainsMono Nerd Font; 31 | font-size: 2.9em; 32 | } 33 | .app-code{ 34 | font-size: 3.1em; 35 | } 36 | .app-spotify{ 37 | font-size: 3.4em; 38 | } -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/clock.scss: -------------------------------------------------------------------------------- 1 | .time{ 2 | background-color: $background; 3 | color: $foreground; 4 | margin: .5rem; 5 | padding: 0 8.6rem 0 8.6rem; 6 | border-radius: 12px; 7 | } 8 | .hour, .min, .separator-clock{ 9 | padding: 1rem 0 0 0; 10 | font-family: Comic Mono; 11 | font-weight: bold; 12 | font-size: 2.5em; 13 | } 14 | .separator-clock{ 15 | margin-top: -5px; 16 | } 17 | .day{ 18 | padding: .5rem; 19 | font-family: Comic Mono; 20 | font-size: 1.2em; 21 | } 22 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/music.scss: -------------------------------------------------------------------------------- 1 | .music-player{ 2 | background-color: $background; 3 | padding: 0 1.5rem 1rem 1.5rem; 4 | border-radius: 12px; 5 | margin: .5rem; 6 | } 7 | .album_art { 8 | background-size: cover; 9 | background-position: center; 10 | border-radius: 12px; 11 | margin: 2rem 1rem 1.5rem 1rem; 12 | padding: 7rem; 13 | } 14 | 15 | .artist { 16 | font-family: Cartograph CF; 17 | font-style: italic; 18 | font-weight: bold; 19 | color: $foreground; 20 | font-size : 1.2em; 21 | } 22 | .song{ 23 | font-family: Cartograph CF; 24 | font-style: italic; 25 | font-size: 1.1em; 26 | color: $foreground; 27 | margin-top: -5px; 28 | } 29 | .btn_prev, .btn_play, .btn_next { 30 | font-family: JetBrainsMono Nerd Font; 31 | } 32 | .btn_prev { 33 | color: $foreground; 34 | font-size : 2.8em; 35 | } 36 | .btn_play { 37 | color: $foreground; 38 | font-size : 2.8em; 39 | font-weight : bold; 40 | } 41 | .btn_next { 42 | color: $foreground; 43 | font-size : 2.8em; 44 | } 45 | .metric-player scale trough highlight { 46 | all: unset; 47 | border-radius: 10px; 48 | background-color: $foreground; 49 | } 50 | 51 | .metric-player scale trough { 52 | all: unset; 53 | background-color: $background; 54 | border:2px solid $foreground; 55 | border-radius: 50px; 56 | } 57 | 58 | .metric-player scale trough { 59 | min-width: 200px; 60 | min-height: 10px; 61 | // margin: .5rem 1rem 0 1rem; 62 | } -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/profile.scss: -------------------------------------------------------------------------------- 1 | .profile{ 2 | background-color: $background; 3 | border-radius: 12px; 4 | margin: .5rem; 5 | padding: 3.1rem; 6 | } 7 | .pfp { 8 | background-image: url("assets/profile.png"); 9 | background-repeat: no-repeat; 10 | background-size: 15rem; 11 | background-position: center; 12 | min-height: 200px; 13 | min-width: 200px; 14 | border-radius: 50%; 15 | } 16 | .pfptxt { 17 | margin-top: 30px; 18 | color: $foreground; 19 | font-family: Cartograph CF; 20 | font-style: italic; 21 | font-weight: bold; 22 | font-size: 25px; 23 | } 24 | .subpfptxt { 25 | color: $foreground; 26 | font-family: Comic Mono; 27 | margin-top: 10px; 28 | font-size: 23px; 29 | } -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/quote.scss: -------------------------------------------------------------------------------- 1 | .quote{ 2 | background-color: $background; 3 | border-radius: 12px; 4 | padding: 1.5rem; 5 | margin: .5rem; 6 | } 7 | .quote-text{ 8 | font-family: Comic Mono; 9 | padding: 2.4rem .5rem 1rem .5rem; 10 | font-size: 1.2em; 11 | color: $foreground; 12 | } 13 | .quote-author{ 14 | font-family: Cartograph CF; 15 | font-style: italic; 16 | font-size: 1.4em; 17 | color: $foreground; 18 | margin-top: 1.7rem; 19 | } 20 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/systray.scss: -------------------------------------------------------------------------------- 1 | .systray-circular{ 2 | font-family: JetBrainsMono Nerd Font; 3 | font-size: 2em; 4 | } 5 | .radial-ram-box, 6 | .radial-bat-box, 7 | .radial-volume-box, 8 | .radial-brightness-box{ 9 | font-family: "Font Awesome 5 Pro"; 10 | background-color: $background; 11 | padding: 1.5rem 2.3rem 1.5rem 2.3rem; 12 | margin: .5rem; 13 | border-radius: 2rem 0; 14 | } 15 | .brightness-radial, 16 | .volume-radial, 17 | .bat-radial, 18 | .ram-radial{ 19 | background-color: $background-alt2; 20 | } 21 | .brightness-radial-label, 22 | .volume-radial-label, 23 | .bat-radial-label, 24 | .ram-radial-label{ 25 | padding: 2.5rem; 26 | } 27 | .brightness-radial{ 28 | color: $yellow; 29 | } 30 | .volume-radial{ 31 | color: $magenta; 32 | } 33 | .bat-radial{ 34 | color: $green; 35 | } 36 | .ram-radial{ 37 | color: $blue; 38 | } 39 | 40 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/task.scss: -------------------------------------------------------------------------------- 1 | .task{ 2 | background-color: $background; 3 | color: $foreground; 4 | border-radius: 12px; 5 | padding: 1.9rem; 6 | margin: .5rem; 7 | .task-list{ 8 | margin: 0 0 0 2.5rem; 9 | } 10 | } 11 | 12 | .appointment{ 13 | padding: 0 1rem 1rem 0; 14 | } 15 | .appointment-label{ 16 | font-family: Comic Mono; 17 | font-size: 1.3em; 18 | } 19 | .appointment-text, 20 | .appointment-text-time{ 21 | font-family: Cartograph CF; 22 | font-style: italic; 23 | font-weight: bold; 24 | font-size: 1.3em; 25 | } 26 | 27 | .task-list-box{ 28 | padding: 0 1rem 1rem 0; 29 | } 30 | .tasklabel{ 31 | font-family: "JetBrainsMono Nerd Font"; 32 | font-size: 1.5em; 33 | } 34 | .tasklabel-mem{ 35 | font-family: "JetBrainsMono Nerd Font"; 36 | font-size: 1.6em; 37 | } 38 | .tasklabel-todo, 39 | .tasklabel-time{ 40 | font-family: "JetBrainsMono Nerd Font"; 41 | font-size: 1.3em; 42 | font-weight: bold; 43 | } 44 | .todo, .uptime{ 45 | font-family: Cartograph CF; 46 | font-style: italic; 47 | font-size: 1em; 48 | } 49 | .mem-usage, 50 | .disk-usage{ 51 | font-family: Cartograph CF; 52 | font-style: italic; 53 | font-size: 1em; 54 | } 55 | 56 | .powermenu{ 57 | margin-left: 1rem; 58 | .poweroff, 59 | .reboot, 60 | .close{ 61 | font-family: "Font Awesome 5 Pro"; 62 | font-size: 1.6em; 63 | font-weight: bold; 64 | } 65 | .reboot{ 66 | font-size: 1.5em; 67 | } 68 | .close{ 69 | font-weight: normal; 70 | font-size: 2.1em; 71 | } 72 | .lock{ 73 | font-family: "feather"; 74 | font-size: 1.6em; 75 | font-weight: bold; 76 | } 77 | .exit{ 78 | font-family: "Font Awesome 5 Pro"; 79 | font-size: 1.8em; 80 | font-weight: bold; 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/scss/widgets/weather.scss: -------------------------------------------------------------------------------- 1 | .weather{ 2 | font-family: JetBrainsMono Nerd Font; 3 | background-color: $background-alt2; 4 | border-radius: 12px; 5 | padding: 2rem; 6 | } 7 | .weather-day{ 8 | font-family: Comic Mono; 9 | font-weight: bold; 10 | font-size: 1.6em; 11 | color: $foreground; 12 | } 13 | .temp-region{ 14 | font-family: Comic Mono; 15 | font-size: 1em; 16 | color: $foreground; 17 | } 18 | .weather-icon{ 19 | font-size: 4.2em; 20 | } 21 | .temperature{ 22 | font-family: Iosevka Medium; 23 | font-size: 1em; 24 | color: $foreground 25 | } 26 | .weather-stat{ 27 | font-family: Cartograph CF; 28 | font-style: italic; 29 | font-size: 1.1em; 30 | color: $foreground 31 | } 32 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/yuck/_variables.yuck: -------------------------------------------------------------------------------- 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 2 | ;; Variables Section's ;; 3 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 4 | 5 | 6 | ;; Profile Variables 7 | (defpoll NAME :interval "5m" "hostname") 8 | (defpoll UNAME :interval "5m" "whoami") 9 | 10 | ;; Systray Variables 11 | (defpoll ram-usage :interval "1s" "~/.config/eww/dashboard/scripts/sys_info --mem") 12 | (defpoll battery-capacity :interval "1s" "~/.config/eww/dashboard/scripts/sys_info --bat") 13 | (defpoll current-brightness :interval "1s" "~/.config/eww/dashboard/scripts/sys_info --bri") 14 | (defpoll current-volume :interval "1s" "~/.config/eww/dashboard/scripts/sys_info --vol") 15 | 16 | ;; Time Variables 17 | (defpoll hour :interval "1s" `date +%H`) 18 | (defpoll minute :interval "1s" `date +%M`) 19 | (defpoll day :interval "1s" `date "+%A"`) 20 | (defpoll date :interval "1s" `date "+%D"`) 21 | 22 | ;; Music Variables 23 | (defpoll art :interval "5s" "~/.config/eww/dashboard/scripts/music coverloc") 24 | (defpoll title :interval "5s" "~/.config/eww/dashboard/scripts/music title") 25 | (defpoll artist :interval "5s" "~/.config/eww/dashboard/scripts/music artist") 26 | (defpoll playpause :interval "5s" "~/.config/eww/dashboard/scripts/music statusicon") 27 | (defpoll songtime :interval "1s" "~/.config/eww/dashboard/scripts/getSongDuration") 28 | 29 | ;; Quotes Variables 30 | (defpoll quote_text :interval "10m" "~/.config/eww/dashboard/scripts/quotes quote") 31 | (defpoll quote_author :interval "10m" "~/.config/eww/dashboard/scripts/quotes author") 32 | 33 | ;; Weather Variables 34 | (defpoll weather-icon :interval "10m" "~/.config/eww/dashboard/scripts/getweather --icon") 35 | (defpoll weather-city :interval "10m" "~/.config/eww/dashboard/scripts/getweather --city") 36 | (defpoll weather-country :interval "10m" "~/.config/eww/dashboard/scripts/getweather --country") 37 | (defpoll weather-hex :interval "10m" "~/.config/eww/dashboard/scripts/getweather --hex") 38 | (defpoll temperature :interval "10m" "~/.config/eww/dashboard/scripts/getweather --temp") 39 | (defpoll weather-stat :interval "10m" "~/.config/eww/dashboard/scripts/getweather --stat") 40 | 41 | ;; Todo Variables 42 | (defpoll todo :interval "10s" "~/.config/eww/dashboard/scripts/check-todo adaptive") 43 | (defpoll todo-num :interval "10s" "~/.config/eww/dashboard/scripts/check-todo adaptivenum") 44 | (defpoll todo-total :interval "10s" "~/.config/eww/dashboard/scripts/check-todo totnum") 45 | (defpoll todo-apri :interval "10s" "~/.config/eww/dashboard/scripts/check-todo apri") 46 | (defpoll todo-apri-num :interval "10s" "~/.config/eww/dashboard/scripts/check-todo aprinum") 47 | (defpoll otherpri :interval "10s" "~/.config/eww/dashboard/scripts/check-todo otherpri") 48 | (defpoll otherprinum :interval "10s" "~/.config/eww/dashboard/scripts/check-todo otherprinum") 49 | (defpoll next_appointment :interval "1m" "~/.config/eww/dashboard/scripts/check-todo appoint") 50 | (defpoll next_appointment_time :interval "1m" "~/.config/eww/dashboard/scripts/check-todo appoint-time") 51 | 52 | ;; Task Variables 53 | (defpoll uptime :interval "60s" "~/.config/eww/dashboard/scripts/task up") 54 | (defpoll cpuavg :interval "60s" "~/.config/eww/dashboard/scripts/task cpuavg") 55 | (defpoll disk-usage :interval "1h" "~/.config/eww/dashboard/scripts/task disk") 56 | (defpoll mem-usage :interval "30s" "~/.config/eww/dashboard/scripts/task mem") 57 | 58 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/yuck/_widgets.yuck: -------------------------------------------------------------------------------- 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 2 | ;; Widgets Section's ;; 3 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 4 | 5 | 6 | ;; Profile Widgets 7 | (defwidget profile [] 8 | (box :orientation "v" 9 | :space-evenly "false" 10 | :class "profile" 11 | (box :orientation "h" 12 | :space-evenly "false" 13 | (box :class "pfp")) 14 | (box :orientation "v" :space-evenly "false" 15 | (box :class "pfptxt" :valign "center" {NAME}) 16 | (box :class "subpfptxt" :halign "center" {UNAME}) 17 | ) 18 | ) 19 | ) 20 | 21 | ;; Circular Systray Widgets 22 | (defwidget radialmeter [value text ?class ?labelclass] 23 | (circular-progress :value value 24 | :class "radial ${class}" 25 | :start-angle 0 26 | :thickness 12 27 | (label :text text 28 | :class "radial-label ${labelclass}" 29 | :limit-width 2 30 | :show_truncated false 31 | :wrap false 32 | :angle 0.0))) 33 | (defwidget circular-brightness[] 34 | (box :spacing 0 35 | :orientation "h" 36 | :space-evenly false 37 | :halign "center" 38 | (box :spacing 0 39 | :orientation "h" 40 | :space-evenly false 41 | :class "radial-brightness-box" 42 | :tooltip "Current Brightness: ${current-brightness}%" 43 | (radialmeter :value current-brightness 44 | :text "" 45 | :labelclass "brightness-radial-label" 46 | :class "brightness-radial") 47 | ) 48 | ) 49 | ) 50 | (defwidget circular-volume[] 51 | (box :spacing 0 52 | :orientation "h" 53 | :space-evenly false 54 | :halign "center" 55 | (box :spacing 0 56 | :orientation "h" 57 | :space-evenly false 58 | :class "radial-volume-box" 59 | :tooltip "Current Volume: ${current-volume}%" 60 | (radialmeter :value current-volume 61 | :text "" 62 | :labelclass "volume-radial-label" 63 | :class "volume-radial") 64 | ) 65 | ) 66 | ) 67 | (defwidget circular-bat[] 68 | (box :spacing 0 69 | :orientation "h" 70 | :space-evenly false 71 | :halign "center" 72 | (box :spacing 0 73 | :orientation "h" 74 | :space-evenly false 75 | :class "radial-bat-box" 76 | :tooltip "Battery Capacity: ${battery-capacity}%" 77 | (radialmeter :value battery-capacity 78 | :text "" 79 | :labelclass "bat-radial-label" 80 | :class "bat-radial") 81 | ) 82 | ) 83 | ) 84 | (defwidget circular-ram[] 85 | (box :spacing 0 86 | :orientation "h" 87 | :space-evenly false 88 | :halign "center" 89 | (box :spacing 0 90 | :orientation "h" 91 | :space-evenly false 92 | :class "radial-ram-box" 93 | :tooltip "Ram Usage: ${ram-usage}%" 94 | (radialmeter :value ram-usage 95 | :text "" 96 | :labelclass "ram-radial-label" 97 | :class "ram-radial") 98 | ) 99 | ) 100 | ) 101 | (defwidget systray[] 102 | (box :orientation 'v' 103 | :class "systray-circular" 104 | (box :orientation 'h' :space-evenly "false" 105 | (circular-ram)(circular-volume)) 106 | (box :orientation 'h' :space-evenly "false" 107 | (circular-bat)(circular-brightness)) 108 | ) 109 | ) 110 | 111 | 112 | ;; Clock Widgets 113 | (defwidget clock [] 114 | (box :class "time" 115 | :orientation "v" 116 | :space-evenly "false" 117 | :valign "center" 118 | :halign "center" 119 | (box :orientation "h" 120 | :class "date" 121 | :space-evenly "false" 122 | (label :class "hour" 123 | :text "${hour}") 124 | (label :class "separator-clock" 125 | :text ":") 126 | (label :class "min" 127 | :text "${minute}")) 128 | (box :orientation "h" 129 | :space-evenly "false" 130 | :halign "center" 131 | (label :class "day" 132 | :text "${date}")) 133 | ) 134 | ) 135 | 136 | 137 | ;; Music Widgets 138 | (defwidget music [] 139 | (box :class "music-player" 140 | :orientation "v" 141 | :space-evenly "false" 142 | :halign "center" 143 | (box :class "album_art" 144 | :style "background-image: url('${art}');") 145 | (box :orientation "v" 146 | :space-evenly "false" 147 | :halign "center" 148 | :spacing 10 149 | (label :class "artist" 150 | :limit-width 15 151 | :text artist) 152 | (label :class "song" 153 | :limit-width 20 154 | :text title) 155 | (box :orientation "h" 156 | :space-evenly "false" 157 | :halign "center" 158 | :spacing 35 159 | (button :class "btn_prev" :onclick "~/.config/eww/dashboard/scripts/music previous" "ﭣ") 160 | (button :class "btn_play" :onclick "~/.config/eww/dashboard/scripts/music toggle" playpause) 161 | (button :class "btn_next" :onclick "~/.config/eww/dashboard/scripts/music next" "ﭡ")) 162 | (box :orientation "h" 163 | :class "metric-player" 164 | :space-evenly "false" 165 | (scale :min 0 166 | :max 101 167 | :active "false" 168 | :value {songtime != "" ? "${songtime}" : "0"} 169 | ) 170 | ) 171 | ) 172 | ) 173 | ) 174 | 175 | 176 | ;; Quotes Widgets 177 | (defwidget quotes [] 178 | (box :class "quote" 179 | :orientation "h" 180 | :halign "center" 181 | :spacing 0 182 | :space-evenly "false" 183 | :height 253 184 | (box :orientation "v" 185 | :spacing 0 186 | :space-evenly "false" 187 | (label :class "quote-text" 188 | :halign "center" 189 | :wrap "true" 190 | :text "\"${quote_text}\"") 191 | (label :class "quote-author" 192 | :halign "center" 193 | :wrap "true" 194 | :text quote_author) 195 | ) 196 | ) 197 | ) 198 | 199 | ;; Applications Widgets 200 | (defwidget app[] 201 | (box :orientation "v" 202 | :class "applications" 203 | :space-evenly "false" 204 | :spacing 12 205 | (button :class "app-firefox" 206 | :onclick "~/.config/eww/dashboard/scripts/open_apps --firefox" "") 207 | (button :class "app-reddit" 208 | :onclick "~/.config/eww/dashboard/scripts/open_apps --reddit" "") 209 | (button :class "app-telegram" 210 | :onclick "~/.config/eww/dashboard/scripts/open_apps --telegram" "") 211 | (button :class "app-code" 212 | :onclick "~/.config/eww/dashboard/scripts/open_apps --code" "﬏") 213 | (button :class "app-discord" 214 | :onclick "~/.config/eww/dashboard/scripts/open_apps --discord" "") 215 | (button :class "app-github" 216 | :onclick "~/.config/eww/dashboard/scripts/open_apps --github" "") 217 | (button :class "app-spotify" 218 | :onclick "~/.config/eww/dashboard/scripts/open_apps --spotify" "阮") 219 | ) 220 | ) 221 | 222 | ;; Weather Widgets 223 | (defwidget weather [] 224 | (box :class "weather" 225 | :orientation "v" 226 | :space-evenly "false" 227 | :halign "center" 228 | (box :orientation "v" 229 | :space-evenly "false" 230 | (label :class "weather-day" 231 | :text "${day}") 232 | (box :class "weather-icon" 233 | :style "color: ${weather-hex}" {weather-icon})) 234 | (box :orientation "v" 235 | :space-evenly "false" 236 | (box :orientation "h" 237 | :class "weather-stat" 238 | :halign "center" 239 | (label :wrap "true" 240 | :limit-width 15 241 | :text "${weather-stat}")) 242 | (box :orientation "h" 243 | :halign "center" 244 | (label :class "temp-region" 245 | :text "${temperature} in ${weather-city}, ${weather-country}")) 246 | ) 247 | ) 248 | ) 249 | 250 | ;; Task Widgets 251 | (defwidget task-list[] 252 | (box :orientation "v" 253 | :space-evenly "false" 254 | :valign "center" 255 | (box :class "appointment" 256 | :orientation "h" 257 | :space-evenly "false" 258 | (label :class "appointment-label" 259 | :text "Next: ") 260 | (label :class "appointment-text" 261 | :text next_appointment) 262 | (label :class "appointment-label" 263 | :text " in ") 264 | (label :class "appointment-text-time" 265 | :text next_appointment_time)) 266 | (box :class "task-list-box" 267 | :orientation "v" 268 | (box :class "todo" 269 | :orientation "h" 270 | :space-evenly "false" 271 | :spacing 20 272 | (label :class "tasklabel-todo" 273 | :text "") 274 | (label :class "todo-text" 275 | :text "${todo-apri-num} high priority, ${todo-total} total")) 276 | (box :class "uptime" 277 | :orientation "h" 278 | :space-evenly "false" 279 | :spacing 20 280 | (label :class "tasklabel-time" 281 | :text "") 282 | (label :class "uptime-text" 283 | :text "${uptime} uptime")) 284 | (box :class "mem-usage" 285 | :orientation "h" 286 | :space-evenly "false" 287 | :spacing 20 288 | (label :class "tasklabel-mem" 289 | :text "﫭") 290 | (label :class "mem-usage" 291 | :text "${mem-usage} used")) 292 | 293 | (box :class "disk-usage" 294 | :orientation "h" 295 | :space-evenly "false" 296 | :spacing 20 297 | (label :class "tasklabel" 298 | :text "") 299 | (label :class "disk-usage" 300 | :text "${disk-usage} free"))) 301 | 302 | (box :orientation "h" 303 | :space-evenly "false" 304 | :class "powermenu" 305 | :spacing 45 306 | (button :class "poweroff" 307 | :onclick "systemctl poweroff" "") 308 | (button :class "reboot" 309 | :onclick "systemctl reboot" "") 310 | (button :class "lock" 311 | :onclick "betterlockscreen -l" "") 312 | (button :class "exit" 313 | :onclick "bspc quit" "") 314 | (button :class "close" 315 | :onclick "$HOME/.local/bin/eww -c $HOME/.config/eww/dashboard close-all" "")) 316 | ) 317 | ) 318 | (defwidget task[] 319 | (box :orientation "h" 320 | :space-evenly "false" 321 | :class "task" 322 | :width 580 323 | (box :class "task-weather" 324 | (weather)) 325 | (box :class "task-list" 326 | (task-list)) 327 | ) 328 | ) 329 | 330 | ;; Main WIdgets 331 | (defwidget dashboard[] 332 | (box :orientation "h" 333 | :class "dashboard" 334 | :space-evenly "false" 335 | (box :orientation "v" 336 | :space-evenly "false" 337 | (profile) 338 | (quotes)) 339 | (box :orientation "v" :space-evenly "false" 340 | (box :orientation "h" :space-evenly "false" 341 | (box :orientation "v" 342 | :space-evenly "false" 343 | (systray) 344 | (clock)) 345 | (music)) 346 | (task)) 347 | (box :orientation "v" 348 | :space-evenly "false" 349 | (app)) 350 | ) 351 | ) 352 | -------------------------------------------------------------------------------- /Dot files/Bspwm/eww/src/yuck/_windows.yuck: -------------------------------------------------------------------------------- 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 2 | ;; Windows Section's ;; 3 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 4 | 5 | 6 | (defwindow dashboard 7 | :monitor 0 8 | :geometry (geometry :x "0" 9 | :y "0" 10 | :anchor "center") 11 | :windowtype "dock" 12 | :wm-ignore true 13 | (dashboard)) -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/color: -------------------------------------------------------------------------------- 1 | ############ 2 | [color] 3 | 4 | black = #000000 5 | black3 = #181818 6 | black2 = #313131 7 | grey2 = #FFFFFF 8 | grey = #444444 9 | grey3 = #c1c1c1 10 | grey4 = #cc292929 11 | red = #ee5353 12 | blue = #7e94df 13 | pink = #fc87e1 14 | pink2 = #f4b8fe 15 | green = #86da58 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/config.ini: -------------------------------------------------------------------------------- 1 | [global/wm] 2 | ;https://github.com/jaagr/polybar/wiki/Configuration#global-wm-settings 3 | margin-top = 0 4 | margin-bottom = 0 5 | ## INCLUDE SECTION 6 | include-file = ~/.config/polybar/decor 7 | include-file = ~/.config/polybar/color 8 | include-file = ~/.config/polybar/modules 9 | 10 | [settings] 11 | ;https://github.com/jaagr/polybar/wiki/Configuration#application-settings 12 | throttle-output = 5 13 | throttle-output-for = 10 14 | screenchange-reload = true 15 | compositing-background = over 16 | compositing-foreground = over 17 | compositing-overline = over 18 | compositing-underline = over 19 | compositing-border = over 20 | 21 | 22 | 23 | ; Define fallback values used by all module formats 24 | ;format-foreground = #c2c2c2 25 | ;format-background = #c2c2c2 26 | format-underline = #0d1c30 27 | format-overline = #0d1c30 28 | format-spacing = 29 | format-padding = 30 | format-margin = 31 | format-offset = 32 | 33 | [colors] 34 | ; JIBON theme ============ 35 | background = #0d1c30 36 | ;foreground = #000000 37 | alert = #d26937 38 | volume-min = #a3be8c 39 | volume-med = #ebcb8b 40 | volume-max = #bf616a 41 | ; ======================= 42 | 43 | ; Gotham theme ========== 44 | ; background = #0a0f14 45 | ; foreground = #99d1ce 46 | ; alert = #d26937 47 | ; volume-min = #2aa889 48 | ; volume-med = #edb443 49 | ; volume-max = #c23127 50 | ; ======================= 51 | 52 | ; INTRCPTR theme ============ 53 | ;background = ${xrdb:color0:#222} 54 | ;background = #aa000000 55 | ;background-alt = #444 56 | ;foreground = ${xrdb:color7:#222} 57 | ;foreground = #fff 58 | ;foreground-alt = #555 59 | ;primary = #ffb52a 60 | ;secondary = #e60053 61 | ;alert = #bd2c40 62 | 63 | ################################################################################ 64 | ################################################################################ 65 | ############ MAINBAR-bspwm ############ 66 | ################################################################################ 67 | ################################################################################ 68 | 69 | [bar/JIBON] 70 | ;https://github.com/jaagr/polybar/wiki/Configuration 71 | 72 | monitor = ${env:MONITOR} 73 | ;monitor-fallback = HDMI1 74 | monitor-strict = false 75 | override-redirect = false 76 | bottom = false 77 | fixed-center = true 78 | width = 98.5% 79 | height = 32 80 | offset-x = 0.8% 81 | offset-y = 1.5% 82 | 83 | 84 | background = ${colors.background} 85 | foreground = ${colors.foreground} 86 | 87 | ;Background gradient (vertical steps) 88 | ;background-[0-9]+ = #aarrggbb 89 | ;background-0 = 90 | 91 | radius = 5.0 92 | line-size = 0 93 | line-color = #83f8f8 94 | 95 | overline-size = 6 96 | ;overline-color = #bc92f8 97 | underline-size = 6 98 | ;underline-color = #bc92f8 99 | 100 | spacing = 0 101 | 102 | 103 | ;border-size = 2 104 | ;border-left-size = 2 105 | ;border-right-size = 2 106 | ;border-top-size = 2 107 | ;border-bottom-size = 2 108 | ;border-color = #e49fcc 109 | 110 | padding-left = 0 111 | padding-right = 0 112 | 113 | module-margin-left = 0 114 | module-margin-right = 0 115 | 116 | ;https://github.com/jaagr/polybar/wiki/Fonts 117 | font-0 = "Font Awesome 5 Free:style=Solid:pixelsize=11;2.5" 118 | font-1 = "Quicksand-Bold Free:style=bold:pixelsize=12;3" 119 | font-2 = "NotoSansJP-Bold Free:style=bold:Font:size=12;3" 120 | font-3 = "FiraCode Nerd Font Mono:style=Bold:size=12;2" 121 | font-4 = "FiraCode Nerd Font Mono:style=Medium:size=13;2" 122 | font-5 = "icomoon\-feather:antialias=true:pixelsize=13;2" 123 | font-6 = "FiraCode Nerd Font Mono:style=Medium:size=20;4" 124 | font-7 = "Iosevka Nerd Font:style=Regular:size=14;2" 125 | font-8 = "FiraCode Nerd Font Mono:style=Medium:size=15;3" 126 | 127 | modules-left = space2 space2 LD Powermenu RD space2 bspwm 128 | modules-center = 129 | modules-right = Music space2 space2 space2 pulseaudio3 space2 space2 space2 dunst space2 space2 space2 wifi space2 space2 date 130 | 131 | separator = "" 132 | 133 | tray-position = center 134 | tray-detached = false 135 | tray-maxsize = 20 136 | tray-background = ${colors.background} 137 | tray-offset-x = 0 138 | tray-offset-y = 0 139 | tray-padding = 4 140 | tray-scale = 1.0 141 | tray-icon-size = 5 142 | 143 | 144 | 145 | 146 | #i3: Make the bar appear below windows 147 | wm-restack = bspwm 148 | ;override-redirect = true 149 | 150 | ; Enable support for inter-process messaging 151 | ; See the Messaging wiki page for more details. 152 | enable-ipc = true 153 | 154 | ; Fallback click handlers that will be called if 155 | ; there's no matching module handler found. 156 | click-left = 157 | click-middle = 158 | click-right = 159 | scroll-up = bspwm-desknext 160 | scroll-down = bspwm-deskprev 161 | double-click-left = 162 | double-click-middle = 163 | double-click-right = 164 | 165 | ; Requires polybar to be built with xcursor support (xcb-util-cursor) 166 | ; Possible values are: 167 | ; - default : The default pointer as before, can also be an empty string (default) 168 | ; - pointer : Typically in the form of a hand 169 | ; - ns-resize : Up and down arrows, can be used to indicate scrolling 170 | #cursor-click = pointer 171 | #cursor-scroll = ns-resize 172 | 173 | ########################################### 174 | ########################################## 175 | ######### MAINBAR-3 BSPWM ############### 176 | ########################################## 177 | 178 | [bar/App-bar] 179 | ;https://github.com/jaagr/polybar/wiki/Configuration 180 | 181 | monitor = ${env:MONITOR} 182 | ;monitor-fallback = HDMI1 183 | monitor-strict = false 184 | override-redirect = false 185 | bottom = false 186 | fixed-center = true 187 | width = 32.5% 188 | height = 32 189 | offset-x = 67% 190 | offset-y = 1.5% 191 | 192 | background = ${colors.background} 193 | foreground = ${colors.foreground} 194 | 195 | ;Background gradient (vertical steps) 196 | ;background-[0-9]+ = #aarrggbb 197 | ;background-0 = 198 | 199 | radius = 10.0 200 | line-size = 2 201 | line-color = #000000 202 | 203 | border-size = 0 204 | ;border-left-size = 25 205 | ;border-right-size = 25 206 | ;border-top-size = 0 207 | ;border-bottom-size = 25 208 | border-color = #ffffff 209 | 210 | padding-left = 1 211 | padding-right = 1 212 | 213 | module-margin-left = 1 214 | module-margin-right = 1 215 | 216 | ;https://github.com/jaagr/polybar/wiki/Fonts 217 | font-0 = "Font Awesome 5 Free:style=Solid:pixelsize=11;2.5" 218 | font-1 = "Quicksand-Bold Free:style=bold:pixelsize=12;3" 219 | font-2 = "NotoSansJP-Bold Free:style=bold:Font:size=12;3" 220 | font-3 = "FiraCode Nerd Font Mono:style=Bold:size=20;5" 221 | font-4 = "FiraCode Nerd Font Mono:style=Medium:size=13;2" 222 | font-5 = "icomoon\-feather:antialias=true:pixelsize=13;3" 223 | 224 | modules-left = 225 | modules-center = weather cpu pulseaudio wifi memory2 226 | modules-right = 227 | 228 | separator = 229 | 230 | ;tray-position = right 231 | ;tray-detached = false 232 | ;tray-maxsize = 20 233 | ;tray-background = ${colors.background} 234 | ;tray-offset-x = 0 235 | ;tray-offset-y = 0 236 | ;tray-padding = 4 237 | ;tray-scale = 1.0 238 | 239 | 240 | 241 | #i3: Make the bar appear below windows 242 | wm-restack = bspwm 243 | ;override-redirect = true 244 | 245 | ; Enable support for inter-process messaging 246 | ; See the Messaging wiki page for more details. 247 | enable-ipc = true 248 | 249 | ; Fallback click handlers that will be called if 250 | ; there's no matching module handler found. 251 | click-left = 252 | click-middle = 253 | click-right = 254 | scroll-up = bspwm-desknext 255 | scroll-down = bspwm-deskprev 256 | double-click-left = 257 | double-click-middle = 258 | double-click-right = 259 | 260 | ; Requires polybar to be built with xcursor support (xcb-util-cursor) 261 | ; Possible values are: 262 | ; - default : The default pointer as before, can also be an empty string (default) 263 | ; - pointer : Typically in the form of a hand 264 | ; - ns-resize : Up and down arrows, can be used to indicate scrolling 265 | cursor-click = 266 | cursor-scroll = 267 | ######################################################################### 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/decor: -------------------------------------------------------------------------------- 1 | [module/space] 2 | type = custom/text 3 | content = " " 4 | content-background = ${color.grey4} 5 | 6 | [module/space2] 7 | type = custom/text 8 | content = " " 9 | content-background = ${color.background} 10 | 11 | [module/space3] 12 | type = custom/text 13 | content = " " 14 | content-foreground = #50e7ff 15 | content-background = #50e7ff 16 | 17 | [module/sep] 18 | type = custom/text 19 | ;content =  20 | content = "" 21 | 22 | content-font = 3 23 | content-background = ${color.grey4} 24 | content-foreground = ${color.altblack} 25 | content-padding = 1 26 | 27 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 28 | 29 | [module/LD] 30 | type = custom/text 31 | content = "%{T3}%{T-}" 32 | content-font = 4 33 | content-background = ${color.background} 34 | content-foreground = #58baf1 35 | 36 | 37 | 38 | [module/RD] 39 | type = custom/text 40 | content = "%{T3}%{T-}" 41 | content-font = 4 42 | content-background = ${color.background} 43 | content-foreground = #58baf1 44 | 45 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 46 | 47 | [module/RLD] 48 | type = custom/text 49 | content = "%{T3}%{T-}" 50 | content-font = 7 51 | content-background = ${color.background} 52 | content-foreground = #58baf1 53 | 54 | [module/RRD] 55 | type = custom/text 56 | content = "%{T3}%{T-}" 57 | content-font = 7 58 | content-background = ${color.background} 59 | content-foreground = #58baf1 60 | 61 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 62 | 63 | [module/WLD] 64 | type = custom/text 65 | content = "%{T3}%{T-}" 66 | content-font = 3 67 | content-background = ${color.background} 68 | content-foreground = ${color.pink} 69 | 70 | [module/WRD] 71 | type = custom/text 72 | content = "%{T3}%{T-}" 73 | content-font = 3 74 | content-background = ${color.background} 75 | content-foreground = ${color.pink} 76 | 77 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 78 | 79 | 80 | [module/CLD] 81 | type = custom/text 82 | content = "%{T3}%{T-}" 83 | content-font = 3 84 | content-background = ${color.background} 85 | content-foreground = ${color.background1} 86 | 87 | [module/CRD] 88 | type = custom/text 89 | content = "%{T3}%{T-}" 90 | content-font = 3 91 | content-background = ${color.background} 92 | content-foreground = ${color.background1} 93 | 94 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 95 | 96 | 97 | [module/MLD] 98 | type = custom/text 99 | content = "%{T3}%{T-}" 100 | content-font = 3 101 | content-background = ${color.background} 102 | content-foreground = ${color.background3} 103 | 104 | [module/MRD] 105 | type = custom/text 106 | content = "%{T3}%{T-}" 107 | content-font = 3 108 | content-background = ${color.background} 109 | content-foreground = ${color.background3} 110 | 111 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 112 | 113 | 114 | [module/YLD] 115 | type = custom/text 116 | content = "%{T3}%{T-}" 117 | content-font = 3 118 | content-background = ${color.background} 119 | content-foreground = ${color.yellow} 120 | 121 | [module/YRD] 122 | type = custom/text 123 | content = "%{T3}%{T-}" 124 | content-font = 3 125 | content-background = ${color.background} 126 | content-foreground = ${color.yellow} 127 | 128 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 129 | 130 | 131 | [module/GLD] 132 | type = custom/text 133 | content = "%{T3}%{T-}" 134 | content-font = 3 135 | content-background = ${color.background} 136 | content-foreground = ${color.green} 137 | 138 | [module/GRD] 139 | type = custom/text 140 | content = "%{T3}%{T-}" 141 | content-font = 3 142 | content-background = ${color.background} 143 | content-foreground = ${color.green} 144 | 145 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 146 | 147 | [module/BLD] 148 | type = custom/text 149 | content = "%{T3}%{T-}" 150 | content-font = 3 151 | content-background = ${color.background} 152 | content-foreground = ${color.blue} 153 | 154 | [module/BRD] 155 | type = custom/text 156 | content = "%{T3}%{T-}" 157 | content-font = 3 158 | content-background = ${color.background} 159 | content-foreground = ${color.grey4} 160 | 161 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 162 | 163 | [module/YPL] 164 | type = custom/text 165 | content = "%{T3}%{T-}" 166 | content-font = 3 167 | content-background = ${color.black3} 168 | content-foreground = ${color.black3} 169 | 170 | [module/CPL] 171 | type = custom/text 172 | content = "%{T3}%{T-}" 173 | content-font = 3 174 | content-background = ${color.yellow} 175 | content-foreground = ${color.cyan} 176 | 177 | [module/GPL] 178 | type = custom/text 179 | content = "%{T3}%{T-}" 180 | content-font = 3 181 | content-background = ${color.grey4} 182 | content-foreground = ${color.grey4} 183 | 184 | [module/RPL] 185 | type = custom/text 186 | content = "%{T3}%{T-}" 187 | content-font = 3 188 | content-background = ${color.magenta} 189 | content-foreground = ${color.red} 190 | 191 | [module/MPL] 192 | type = custom/text 193 | content = "%{T3}%{T-}" 194 | content-font = 3 195 | content-background = ${color.blue} 196 | content-foreground = ${color.magenta} 197 | 198 | [module/GMPL] 199 | type = custom/text 200 | content = "%{T3}▶%{T-}" 201 | content-font = 3 202 | content-background = ${color.grey4} 203 | content-foreground = ${color.grey4} 204 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ 205 | 206 | 207 | 208 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/Powermenu-close.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | killall -q eww & 5 | eww daemon & 6 | 7 | 8 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/Powermenu.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | eww open power_full & 5 | eww open reboot_full & 6 | eww open logout_full & 7 | eww open lock_full & 8 | 9 | 10 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/get_spotify_status.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # The name of polybar bar which houses the main spotify module and the control modules. 4 | PARENT_BAR="now-playing" 5 | PARENT_BAR_PID=$(pgrep -a "polybar" | grep "$PARENT_BAR" | cut -d" " -f1) 6 | 7 | # Set the source audio player here. 8 | # Players supporting the MPRIS spec are supported. 9 | # Examples: spotify, vlc, chrome, mpv and others. 10 | # Use `playerctld` to always detect the latest player. 11 | # See more here: https://github.com/altdesktop/playerctl/#selecting-players-to-control 12 | PLAYER="spotify" 13 | 14 | # Format of the information displayed 15 | # Eg. {{ artist }} - {{ album }} - {{ title }} 16 | # See more attributes here: https://github.com/altdesktop/playerctl/#printing-properties-and-metadata 17 | FORMAT="{{ title }} - {{ artist }}" 18 | 19 | # Sends $2 as message to all polybar PIDs that are part of $1 20 | update_hooks() { 21 | while IFS= read -r id 22 | do 23 | polybar-msg -p "$id" hook spotify-play-pause $2 1>/dev/null 2>&1 24 | done < <(echo "$1") 25 | } 26 | 27 | PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null) 28 | EXIT_CODE=$? 29 | 30 | if [ $EXIT_CODE -eq 0 ]; then 31 | STATUS=$PLAYERCTL_STATUS 32 | else 33 | STATUS="No player is running" 34 | fi 35 | 36 | if [ "$1" == "--status" ]; then 37 | echo "$STATUS" 38 | else 39 | if [ "$STATUS" = "Stopped" ]; then 40 | echo "No music is playing" 41 | elif [ "$STATUS" = "Paused" ]; then 42 | update_hooks "$PARENT_BAR_PID" 2 43 | playerctl --player=$PLAYER metadata --format "$FORMAT" 44 | elif [ "$STATUS" = "No player is running" ]; then 45 | echo "$STATUS" 46 | else 47 | update_hooks "$PARENT_BAR_PID" 1 48 | playerctl --player=$PLAYER metadata --format "$FORMAT" 49 | fi 50 | fi 51 | 52 | 53 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/mopidy.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Queries the mopidy API for artist and title 3 | # 4 | # requires curl and jq 5 | # place this script in `~/.config/polybar/scripts/mopidy.sh 6 | # 7 | # 8 | 9 | set -e 10 | set -o pipefail 11 | 12 | MOPIDY_SERVER=${MOPIDY_SERVER:-"http://localhost:6680"} 13 | 14 | main() { 15 | RETURN=$(curl --silent -f -XPOST $MOPIDY_SERVER/mopidy/rpc) 16 | 17 | POSTDATA='{"jsonrpc": "2.0", "id": 1, "method": "core.playback.get_current_track"}' 18 | DATA=$(curl --silent -d "${POSTDATA}" $MOPIDY_SERVER/mopidy/rpc) 19 | 20 | ARTIST=$(echo $DATA | jq '.result.artists[0].name') 21 | ALBUM=$(echo $DATA | jq '.result.album.name') 22 | TITLE=$(echo $DATA | jq '.result.name') 23 | 24 | echo "$ARTIST - $TITLE" | sed s/\"//g | sed s/null\\s-.*// 25 | } 26 | 27 | main "$@" 28 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/owm-key: -------------------------------------------------------------------------------- 1 | 3806810301ae9d9e2955a87f7bb35929 2 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/player-close.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | 5 | eww close player_side & 6 | 7 | 8 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/player.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | eww open player_side & 5 | 6 | 7 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/scroll_spotify_status.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # see man zscroll for documentation of the following parameters 4 | zscroll -l 20 \ 5 | --delay 1 \ 6 | --scroll-padding "  " \ 7 | --match-command "`dirname $0`/get_spotify_status.sh --status" \ 8 | --match-text "Playing" "--scroll 1" \ 9 | --match-text "Paused" "--scroll 0" \ 10 | --update-check true "`dirname $0`/get_spotify_status.sh" & 11 | 12 | wait 13 | 14 | 15 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/weather-polybar-plugin/README.md: -------------------------------------------------------------------------------- 1 | # weather-polybar-plugin 2 | Weather plugin for the polybar panel 3 | 4 | ![preview](https://raw.githubusercontent.com/GuidoFe/weather-polybar-plugin/main/preview.png) 5 | 6 | ## Description 7 | This Polybar plugin uses OpenWeather API to get and display information about the current weather, including the type of event (clear, moderate rain, fog etc.), temperature (Celsious, Fahrenheit or Kelvin) and an alert for strong winds. The icons change accordingly with the local sunrise and sunset times. 8 | 9 | The colors are easily customizable via constants defined at the beginning of the script. 10 | 11 | You will need to provide your personal (and free) api key that you can obtain at https://openweathermap.org/api 12 | 13 | ## Installation 14 | 15 | 1. Copy and paste your API key in a simple text file. The default location is $HOME/.owm-key 16 | 2. Put the script where you want, and 17 | 3. Make the script executable via `chmod +x /path/to/your/script` 18 | 4. Add this to your Polybar config file: 19 | ``` 20 | [module/weather] 21 | type = custom/script 22 | exec = /PATH/TO/YOUR/SCRIPT.sh 23 | tail = false 24 | interval = 960 25 | ``` 26 | 5. Add the plugin to your polybar panel 27 | 28 | ## Configuration 29 | 30 | Take a look at the beginning of the script for all the settings. 31 | 32 | You must use a NerdFont https://www.nerdfonts.com 33 | 34 | Change CITYNAME and COUNTRYCODE with your desired location. 35 | 36 | Set WEATHER_FONT_CODE to the polybar font you want to use to display the weather type and wind icon, and set the TEMP_FONT_CODE to the font for the thermometer icon (it was too big with the first font) 37 | 38 | You can change the text language by setting the LANG variable. You can find the available languages and their codes at https://openweathermap.org/current#list 39 | 40 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/weather-polybar-plugin/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/polybar/scripts/weather-polybar-plugin/preview.png -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/weather-polybar-plugin/weather-plugin.sh: -------------------------------------------------------------------------------- 1 | 2 | #!/bin/bash 3 | 4 | # SETTINGS vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 5 | 6 | # API settings ________________________________________________________________ 7 | 8 | APIKEY=`cat ~/.config/polybar/scripts/owm-key` 9 | CITY_NAME='Guwahati' 10 | COUNTRY_CODE='IN' 11 | # Desired output language 12 | LANG="en" 13 | # UNITS can be "metric", "imperial" or "kelvin". Set KNOTS to "yes" if you 14 | # want the wind in knots: 15 | 16 | # | temperature | wind 17 | # ----------------------------------- 18 | # metric | Celsius | km/h 19 | # imperial | Fahrenheit | miles/hour 20 | # kelvin | Kelvin | km/h 21 | 22 | UNITS="metric" 23 | 24 | # Color Settings ______________________________________________________________ 25 | 26 | COLOR_CLOUD="#606060" 27 | COLOR_THUNDER="#d3b987" 28 | COLOR_LIGHT_RAIN="#73cef4" 29 | COLOR_HEAVY_RAIN="#b3deef" 30 | COLOR_SNOW="#FFFFFF" 31 | COLOR_FOG="#606060" 32 | COLOR_TORNADO="#d3b987" 33 | COLOR_SUN="#ffc24b" 34 | COLOR_MOON="#FFFFFF" 35 | COLOR_ERR="#f43753" 36 | COLOR_WIND="#73cef4" 37 | COLOR_COLD="#b3deef" 38 | COLOR_HOT="#f43753" 39 | COLOR_NORMAL_TEMP="#FFFFFF" 40 | 41 | # Leave "" if you want the default polybar color 42 | COLOR_TEXT="#ffffff" 43 | 44 | # Polybar settings ____________________________________________________________ 45 | 46 | # Font for the weather icons 47 | WEATHER_FONT_CODE=7 48 | 49 | # Font for the thermometer icon 50 | TEMP_FONT_CODE=5 51 | 52 | # Wind settings _______________________________________________________________ 53 | 54 | # Display info about the wind or not. yes/no 55 | DISPLAY_WIND="no" 56 | 57 | # Display in knots. yes/no 58 | KNOTS="yes" 59 | 60 | # How many decimals after the floating point 61 | DECIMALS=0 62 | 63 | # Min. wind force required to display wind info (it depends on what 64 | # measurement unit you have set: knots, m/s or mph). Set to 0 if you always 65 | # want to display wind info. It's ignored if DISPLAY_WIND is false. 66 | 67 | MIN_WIND=11 68 | 69 | # Display the numeric wind force or not. If not, only the wind icon will 70 | # appear. yes/no 71 | 72 | DISPLAY_FORCE="no" 73 | 74 | # Display the wind unit if wind force is displayed. yes/no 75 | DISPLAY_WIND_UNIT="no" 76 | 77 | # Thermometer settings ________________________________________________________ 78 | 79 | # When the thermometer icon turns red 80 | HOT_TEMP=27 81 | 82 | # When the thermometer icon turns blue 83 | COLD_TEMP=20 84 | 85 | # Other settings ______________________________________________________________ 86 | 87 | # Display the weather description. yes/no 88 | DISPLAY_LABEL="yes" 89 | 90 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91 | 92 | if [ "$COLOR_TEXT" != "" ]; then 93 | COLOR_TEXT_BEGIN="%{F$COLOR_TEXT}" 94 | COLOR_TEXT_END="%{F-}" 95 | fi 96 | 97 | RESPONSE="" 98 | ERROR=0 99 | ERR_MSG="" 100 | if [ $UNITS = "kelvin" ]; then 101 | UNIT_URL="" 102 | else 103 | UNIT_URL="&units=$UNITS" 104 | fi 105 | URL="api.openweathermap.org/data/2.5/weather?appid=$APIKEY$UNIT_URL&lang=$LANG&q=$CITY_NAME,$COUNTRY_CODE" 106 | 107 | function getData { 108 | ERROR=0 109 | # For logging purposes 110 | # echo " " >> "$HOME/.weather.log" 111 | # echo `date`" ################################" >> "$HOME/.weather.log" 112 | RESPONSE=`curl -s $URL` 113 | CODE="$?" 114 | # echo "Response: $RESPONSE" >> "$HOME/.weather.log" 115 | RESPONSECODE=0 116 | if [ $CODE -eq 0 ]; then 117 | RESPONSECODE=`echo $RESPONSE | jq .cod` 118 | fi 119 | if [ $CODE -ne 0 ] || [ $RESPONSECODE -ne 200 ]; then 120 | if [ $CODE -ne 0 ]; then 121 | ERR_MSG="curl Error $CODE" 122 | # echo "curl Error $CODE" >> "$HOME/.weather.log" 123 | else 124 | ERR_MSG="Conn. Err. $RESPONSECODE" 125 | # echo "API Error $RESPONSECODE" >> "$HOME/.weather.log" 126 | fi 127 | ERROR=1 128 | # else 129 | # echo "$RESPONSE" > "$HOME/.weather-last" 130 | # echo `date +%s` >> "$HOME/.weather-last" 131 | fi 132 | } 133 | function setIcons { 134 | if [ $WID -le 232 ]; then 135 | #Thunderstorm 136 | ICON_COLOR=$COLOR_THUNDER 137 | if [ $DATE -ge $SUNRISE -a $DATE -le $SUNSET ]; then 138 | ICON="" 139 | else 140 | ICON="" 141 | fi 142 | elif [ $WID -le 311 ]; then 143 | #Light drizzle 144 | ICON_COLOR=$COLOR_LIGHT_RAIN 145 | if [ $DATE -ge $SUNRISE -a $DATE -le $SUNSET ]; then 146 | ICON="" 147 | else 148 | ICON="" 149 | fi 150 | elif [ $WID -le 321 ]; then 151 | #Heavy drizzle 152 | ICON_COLOR=$COLOR_HEAVY_RAIN 153 | if [ $DATE -ge $SUNRISE -a $DATE -le $SUNSET ]; then 154 | ICON="" 155 | else 156 | ICON="" 157 | fi 158 | elif [ $WID -le 531 ]; then 159 | #Rain 160 | ICON_COLOR=$COLOR_HEAVY_RAIN 161 | if [ $DATE -ge $SUNRISE -a $DATE -le $SUNSET ]; then 162 | ICON="" 163 | else 164 | ICON="" 165 | fi 166 | elif [ $WID -le 622 ]; then 167 | #Snow 168 | ICON_COLOR=$COLOR_SNOW 169 | ICON="" 170 | elif [ $WID -le 771 ]; then 171 | #Fog 172 | ICON_COLOR=$COLOR_FOG 173 | ICON="" 174 | elif [ $WID -eq 781 ]; then 175 | #Tornado 176 | ICON_COLOR=$COLOR_TORNADO 177 | ICON="" 178 | elif [ $WID -eq 800 ]; then 179 | #Clear sky 180 | if [ $DATE -ge $SUNRISE -a $DATE -le $SUNSET ]; then 181 | ICON_COLOR=$COLOR_SUN 182 | ICON="" 183 | else 184 | ICON_COLOR=$COLOR_MOON 185 | ICON="" 186 | fi 187 | elif [ $WID -eq 801 ]; then 188 | # Few clouds 189 | if [ $DATE -ge $SUNRISE -a $DATE -le $SUNSET ]; then 190 | ICON_COLOR=$COLOR_SUN 191 | ICON="" 192 | else 193 | ICON_COLOR=$COLOR_MOON 194 | ICON="" 195 | fi 196 | elif [ $WID -le 804 ]; then 197 | # Overcast 198 | ICON_COLOR=$COLOR_CLOUD 199 | ICON="" 200 | else 201 | ICON_COLOR=$COLOR_ERR 202 | ICON="" 203 | fi 204 | WIND="" 205 | WINDFORCE=`echo "$RESPONSE" | jq .wind.speed` 206 | if [ $KNOTS = "yes" ]; then 207 | case $UNITS in 208 | "imperial") 209 | # The division by one is necessary because scale works only for divisions. bc is stupid. 210 | WINDFORCE=`echo "scale=$DECIMALS;$WINDFORCE * 0.8689762419 / 1" | bc` 211 | ;; 212 | *) 213 | WINDFORCE=`echo "scale=$DECIMALS;$WINDFORCE * 1.943844 / 1" | bc` 214 | ;; 215 | esac 216 | else 217 | if [ $UNITS != "imperial" ]; then 218 | # Conversion from m/s to km/h 219 | WINDFORCE=`echo "scale=$DECIMALS;$WINDFORCE * 3.6 / 1" | bc` 220 | else 221 | WINDFORCE=`echo "scale=$DECIMALS;$WINDFORCE / 1" | bc` 222 | fi 223 | fi 224 | if [ "$DISPLAY_WIND" = "yes" ] && [ `echo "$WINDFORCE >= $MIN_WIND" |bc -l` -eq 1 ]; then 225 | WIND="%{T$WEATHER_FONT_CODE}%{F$COLOR_WIND}%{F-}%{T-}" 226 | if [ $DISPLAY_FORCE = "yes" ]; then 227 | WIND="$WIND $COLOR_TEXT_BEGIN$WINDFORCE$COLOR_TEXT_END" 228 | if [ $DISPLAY_WIND_UNIT = "yes" ]; then 229 | if [ $KNOTS = "yes" ]; then 230 | WIND="$WIND ${COLOR_TEXT_BEGIN}kn$COLOR_TEXT_END" 231 | elif [ $UNITS = "imperial" ]; then 232 | WIND="$WIND ${COLOR_TEXT_BEGIN}mph$COLOR_TEXT_END" 233 | else 234 | WIND="$WIND ${COLOR_TEXT_BEGIN}km/h$COLOR_TEXT_END" 235 | fi 236 | fi 237 | fi 238 | WIND="$WIND |" 239 | fi 240 | if [ "$UNITS" = "metric" ]; then 241 | TEMP_ICON="糖" 242 | elif [ "$UNITS" = "imperial" ]; then 243 | TEMP_ICON="宅" 244 | else 245 | TEMP_ICON="洞" 246 | fi 247 | 248 | TEMP=`echo "$TEMP" | cut -d "." -f 1` 249 | 250 | if [ "$TEMP" -le $COLD_TEMP ]; then 251 | TEMP="%{F$COLOR_COLD}%{T$TEMP_FONT_CODE}%{T-}%{F-} $COLOR_TEXT_BEGIN$TEMP%{T$TEMP_FONT_CODE}$TEMP_ICON%{T-}$COLOR_TEXT_END" 252 | elif [ `echo "$TEMP >= $HOT_TEMP" | bc` -eq 1 ]; then 253 | TEMP="%{F$COLOR_HOT}%{T$TEMP_FONT_CODE}%{T-}%{F-} $COLOR_TEXT_BEGIN$TEMP%{T$TEMP_FONT_CODE}$TEMP_ICON%{T-}$COLOR_TEXT_END" 254 | else 255 | TEMP="%{F$COLOR_NORMAL_TEMP}%{T$TEMP_FONT_CODE}%{T-}%{F-} $COLOR_TEXT_BEGIN$TEMP%{T$TEMP_FONT_CODE}$TEMP_ICON%{T-}$COLOR_TEXT_END" 256 | fi 257 | } 258 | 259 | function outputCompact { 260 | OUTPUT="$WIND %{T$WEATHER_FONT_CODE}%{F$ICON_COLOR}$ICON%{F-}%{T-} $ERR_MSG$COLOR_TEXT_BEGIN$DESCRIPTION$COLOR_TEXT_END| $TEMP" 261 | # echo "Output: $OUTPUT" >> "$HOME/.weather.log" 262 | echo "$OUTPUT" 263 | } 264 | 265 | getData 266 | if [ $ERROR -eq 0 ]; then 267 | MAIN=`echo $RESPONSE | jq .weather[0].main` 268 | WID=`echo $RESPONSE | jq .weather[0].id` 269 | DESC=`echo $RESPONSE | jq .weather[0].description` 270 | SUNRISE=`echo $RESPONSE | jq .sys.sunrise` 271 | SUNSET=`echo $RESPONSE | jq .sys.sunset` 272 | DATE=`date +%s` 273 | WIND="" 274 | TEMP=`echo $RESPONSE | jq .main.temp` 275 | if [ $DISPLAY_LABEL = "yes" ]; then 276 | DESCRIPTION=`echo "$RESPONSE" | jq .weather[0].description | tr -d '"' | sed 's/.*/\L&/; s/[a-z]*/\u&/g'`" " 277 | else 278 | DESCRIPTION="" 279 | fi 280 | PRESSURE=`echo $RESPONSE | jq .main.pressure` 281 | HUMIDITY=`echo $RESPONSE | jq .main.humidity` 282 | setIcons 283 | outputCompact 284 | else 285 | echo " " 286 | fi 287 | 288 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/weather-toogle-disable.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | eww close weather & 5 | 6 | 7 | -------------------------------------------------------------------------------- /Dot files/Bspwm/polybar/scripts/weather-toogle-enable.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ~/.config/eww/scripts/getweather & 4 | eww open weather & 5 | 6 | 7 | -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 George Demesiotis 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/rofi-network-manager/desktop.png -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/fancy.rasi: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Author : Aditya Shakya 4 | * Mail : adi1090x@gmail.com 5 | * Github : @adi1090x 6 | * Twitter : @adi1090x 7 | * 8 | */ 9 | 10 | configuration { 11 | lines: 10; 12 | columns: 1; 13 | font: "JetBrains Mono Nerd Font 12"; 14 | bw: 0; 15 | location: 0; 16 | padding: 0; 17 | fixed-num-lines: true; 18 | show-icons: false; 19 | sidebar-mode: true; 20 | separator-style: "none"; 21 | hide-scrollbar: true; 22 | fullscreen: false; 23 | fake-transparency: false; 24 | scroll-method: 1; 25 | window-format: "[{w}] ··· {c} ··· {t}"; 26 | click-to-exit: true; 27 | show-match: true; 28 | combi-hide-mode-prefix: false; 29 | display-window: ""; 30 | display-windowcd: ""; 31 | display-run: ""; 32 | display-ssh: ""; 33 | display-drun: ""; 34 | display-combi: ""; 35 | } 36 | 37 | @import "/usr/share/rofi/themes/mask.rasi" 38 | 39 | * { 40 | background-color: @bg; 41 | } 42 | 43 | window { 44 | border: 0px; 45 | border-color: @ac; 46 | border-radius: 0px; 47 | padding: 20; 48 | width: 30%; 49 | height: 50%; 50 | } 51 | 52 | prompt { 53 | spacing: 0; 54 | border: 0; 55 | text-color: @fg; 56 | } 57 | 58 | textbox-prompt-colon { 59 | expand: false; 60 | str: " "; 61 | margin: 0px 4px 0px 0px; 62 | text-color: @purple; 63 | } 64 | 65 | entry { 66 | spacing: 2; 67 | text-color: @purple; 68 | } 69 | 70 | case-indicator { 71 | spacing: 0; 72 | text-color: @purple; 73 | } 74 | 75 | inputbar { 76 | spacing: 5px; 77 | text-color: @purple; 78 | padding: 10px; 79 | children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; 80 | } 81 | 82 | mainbox { 83 | border: 0px; 84 | border-color: @ac; 85 | padding: 2; 86 | } 87 | 88 | listview { 89 | fixed-height: 20%; 90 | text-color: @fg; 91 | border: 0px; 92 | border-radius : 12px; 93 | border-color: @ac; 94 | spacing: 5px; 95 | scrollbar: false; 96 | padding: 20px 12px 10px 20px; 97 | } 98 | 99 | element-text { 100 | background-color: inherit; 101 | text-color: inherit; 102 | padding: 3px; 103 | } 104 | 105 | element { 106 | border: 2px; 107 | padding: 0px; 108 | text-color: @fg; 109 | } 110 | element normal.normal { 111 | background-color: @bg; 112 | text-color: @white; 113 | } 114 | element normal.urgent { 115 | background-color: @bg; 116 | text-color: @white; 117 | } 118 | element normal.active { 119 | background-color: @bg; 120 | text-color: @white; 121 | } 122 | element selected.normal { 123 | background-color: @blui; 124 | border-radius : 5px; 125 | text-color: @blue; 126 | } 127 | element selected.urgent { 128 | background-color: @bg; 129 | text-color: @red; 130 | } 131 | element selected.active { 132 | background-color: @bg; 133 | text-color: @white; 134 | } 135 | element alternate.normal { 136 | background-color: @bg; 137 | text-color: @white; 138 | } 139 | element alternate.urgent { 140 | background-color: @bg; 141 | text-color: @white; 142 | } 143 | element alternate.active { 144 | background-color: @bg; 145 | text-color: @white; 146 | } 147 | 148 | sidebar { 149 | border: 2px; 150 | border-color: @ac; 151 | border-radius: 20px; 152 | } 153 | 154 | button { 155 | margin: 5px; 156 | padding: 5px; 157 | text-color: @yellow; 158 | border: 0px; 159 | border-radius: 20px; 160 | border-color: @yellow; 161 | } 162 | 163 | button selected { 164 | text-color: @fg; 165 | border: 3px; 166 | border-radius: 20px; 167 | border-color: @trans; 168 | } 169 | 170 | scrollbar { 171 | width: 4px; 172 | border: 0px; 173 | handle-color: @fg; 174 | handle-width: 8px; 175 | padding: 0; 176 | } 177 | 178 | message { 179 | border: 0px; 180 | border-color: @ac; 181 | padding: 1px; 182 | } 183 | 184 | textbox { 185 | text-color: @fg; 186 | } 187 | 188 | -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/mask.rasi: -------------------------------------------------------------------------------- 1 | /* colors */ 2 | 3 | * { 4 | al: #00000000; 5 | bg: #0d1c30ff; 6 | se: #434C6Dff; 7 | fg: #52b6ffff; 8 | ac: #CA8CA5ff; 9 | red: #EC7875ff; 10 | green: #61C766ff; 11 | yellow: #FDD835ff; 12 | blue: #42A5F5ff; 13 | purple: #BA68C8ff; 14 | cyan: #4DD0E1ff; 15 | black: #000000ff; 16 | purple: #d785ffff; 17 | blui: #6d91e9ff; 18 | trans: #3E4667ff; 19 | white: #ffffffff; 20 | blue: #4bf7ffff; 21 | } 22 | -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/rofi-network-manager/options.png -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/readme.md: -------------------------------------------------------------------------------- 1 | # Rofi-NetWork-manager 2 | 3 | A nework manager for Tiling Window Managers [i3/bspwm/awesome/etc] or not. 4 | Inspired from [rofi-wifi-menu](https://github.com/zbaylin/rofi-wifi-menu). 5 | 6 | ## Table of Contents 7 | 8 | * [Requirements](#requirements) 9 | * [Features](#features) 10 | * [Screenshots](#screenshots) 11 | * [Config](#config) 12 | * [Download-Usage](#download-usage) 13 | * [Examples-Usage](#examples-usage) 14 | * [ToDo](#todo) 15 | 16 | ### Requirements 17 | 18 | * nmcli 19 | * [rofi](https://github.com/davatorium/rofi) 20 | * [dunst](https://github.com/dunst-project/dunst) (_Optional_) (_For notifications_) 21 | * [qrencode](https://fukuchi.org/works/qrencode) (_For sharing wifi with qrcode_) 22 | 23 | ### Features 24 | 25 | * Connect to an existing network 26 | * Disconnect from the network 27 | * Turn on/off wifi 28 | * Support for Multiple wifi devices 29 | * Option to change between wifi devices when available 30 | * Manual Connection to a Access Point or a hidden one 31 | * Turn on/off ethernet 32 | * See when ethernet is unavailable 33 | * Restart the network 34 | * Status 35 | * See devices Connection name and local IP 36 | * See Current wifi password and share it with a qrcode 37 | 38 | ### Screenshots 39 | 40 | ![Desktop](desktop.png) 41 | ![Options](options.png) 42 | 43 | ### Config 44 | 45 | __rofi-network-manager.conf__ 46 | 47 | ```` 48 | # Location 49 | #This sets the anchor point: 50 | # +---------- + 51 | # | 1 | 2 | 3 | 52 | # | 8 | 0 | 4 | 53 | # | 7 | 6 | 5 | 54 | # +-----------+ 55 | #If you want the window to be in the upper right corner, set location to 3. 56 | LOCATION=0 57 | QRCODE_LOCATION=$LOCATION 58 | #X, Y Offset 59 | Y_AXIS=0 60 | X_AXIS=0 61 | #Use notifications or not 62 | # Values on / off 63 | NOTIFICATIONS_INIT="off" 64 | #Location of qrcode wifi image 65 | QRCODE_DIR="/tmp/" 66 | # WIDTH_FIX_MAIN and WIDTH_FIX_STATUS needs to be increased by a little if the text 67 | # doesn't fit when you launch rofi-network-manager. 68 | #It depends on the font type and size. 69 | WIDTH_FIX_MAIN=8 70 | WIDTH_FIX_STATUS=14 71 | ```` 72 | 73 | __rofi-network-manager.rasi__ 74 | 75 | ```` 76 | font: "DejaVu Sans Mono 9"; //Font 77 | //Colors 78 | foreground:#f8f8f2; //Text 79 | background:#0A1229; //Background 80 | accent:#00BCD4; //Hightlight 81 | foreground-selection:@foreground; //Selection_fg 82 | background-selection:#e34039; //Selection_bg 83 | ```` 84 | 85 | ### Download-Usage 86 | 87 | ``` 88 | git clone https://github.com/P3rf/rofi-network-manager.git 89 | cd rofi-network-manager 90 | bash "./rofi-network-manager.sh" 91 | ``` 92 | 93 | ### Examples-Usage 94 | 95 | **Polybar modules** 96 | 97 | ``` 98 | [module/wireless-network] 99 | type = internal/network 100 | interface = wlan0 101 | interval = 3.0 102 | unknown-as-up = true 103 | format-connected-background = ${colors.background} 104 | format-connected-foreground = ${colors.foreground} 105 | format-connected-padding = 1 106 | format-connected = %{A1:$HOME/.../rofi-network-manager/rofi-network-manager.sh:} %{A} 107 | label-connected = %essid%/%local_ip% 108 | format-disconnected-background = ${colors.background} 109 | format-disconnected-foreground = ${colors.foreground} 110 | format-disconnected-padding = 1 111 | format-disconnected = %{A1:$HOME/.../rofi-network-manager/rofi-network-manager.sh:}%{A} 112 | label-disconnected ="" 113 | ramp-signal-0 = "󰤯" 114 | ramp-signal-1 = "󰤟" 115 | ramp-signal-2 = "󰤢" 116 | ramp-signal-3 = "󰤥" 117 | ramp-signal-4 = "󰤨" 118 | ramp-signal-foreground = ${colors.white} 119 | ``` 120 | 121 | ``` 122 | [module/wired-network] 123 | type = internal/network 124 | interface = eth0 125 | interval = 3.0 126 | format-connected-background = ${colors.background} 127 | format-connected-foreground = ${colors.foreground} 128 | format-connected-padding = 1 129 | format-connected = %{A1:$HOME/.../rofi-network-manager/rofi-network-manager.sh:}%{A} 130 | label-connected =  %local_ip% 131 | format-disconnected-background = ${colors.background} 132 | format-disconnected-foreground = ${colors.foreground-alt} 133 | format-disconnected-padding = 1 134 | format-disconnected = %{A1:$HOME/.../rofi-network-manager/rofi-network-manager.sh:}%{A} 135 | label-disconnected ="󰌺" 136 | ``` 137 | 138 | ### ToDo 139 | 140 | * [X] Fix notifications 141 | * [ ] ~~Add notifications icons~~ 142 | * [X] Support for multiple wifi devices 143 | * [ ] Add Hotspot support 144 | * [X] Share wifi password with qrcode inside rofi 145 | * [ ] Find a way to manage duplicate Access Points 146 | -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/rofi-network-manager.conf: -------------------------------------------------------------------------------- 1 | # Location 2 | #This sets the anchor point: 3 | # +---------- + 4 | # | 1 | 2 | 3 | 5 | # | 8 | 0 | 4 | 6 | # | 7 | 6 | 5 | 7 | # +-----------+ 8 | #If you want the window to be in the upper right corner, set location to 3. 9 | LOCATION=0 10 | QRCODE_LOCATION=$LOCATION 11 | #X, Y Offset 12 | Y_AXIS=0 13 | X_AXIS=0 14 | #Use notifications or not 15 | # Values on / off 16 | NOTIFICATIONS_INIT="off" 17 | #Location of qrcode wifi image 18 | QRCODE_DIR="/tmp/" 19 | # WIDTH_FIX_MAIN and WIDTH_FIX_STATUS needs to be increased by a little if the text 20 | # doesn't fit when you launch rofi-network-manager. 21 | #It depends on the font type and size. 22 | WIDTH_FIX_MAIN=8 23 | WIDTH_FIX_STATUS=14 24 | -------------------------------------------------------------------------------- /Dot files/Bspwm/rofi-network-manager/rofi-network-manager.rasi: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Author : Aditya Shakya 4 | * Mail : adi1090x@gmail.com 5 | * Github : @adi1090x 6 | * Twitter : @adi1090x 7 | * 8 | */ 9 | 10 | configuration { 11 | lines: 10; 12 | columns: 1; 13 | font: "JetBrains Mono Nerd Font 11"; 14 | bw: 0; 15 | location: 0; 16 | padding: 0; 17 | fixed-num-lines: true; 18 | show-icons: false; 19 | sidebar-mode: true; 20 | separator-style: "none"; 21 | hide-scrollbar: true; 22 | fullscreen: false; 23 | fake-transparency: false; 24 | scroll-method: 1; 25 | click-to-exit: true; 26 | } 27 | 28 | @import "/usr/share/rofi/themes/mask.rasi" 29 | 30 | * { 31 | background-color: @bg; 32 | } 33 | 34 | window { 35 | border: 0px; 36 | border-color: @ac; 37 | border-radius: 0px; 38 | padding: 20; 39 | width: 50%; 40 | height: 50%; 41 | } 42 | 43 | prompt { 44 | spacing: 0; 45 | border: 0; 46 | text-color: @fg; 47 | } 48 | 49 | textbox-prompt-colon { 50 | expand: false; 51 | str: " "; 52 | margin: 0px 4px 0px 0px; 53 | text-color: @purple; 54 | } 55 | 56 | entry { 57 | spacing: 2; 58 | text-color: @purple; 59 | } 60 | 61 | case-indicator { 62 | spacing: 0; 63 | text-color: @purple; 64 | } 65 | 66 | inputbar { 67 | spacing: 5px; 68 | text-color: @purple; 69 | padding: 10px; 70 | children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; 71 | } 72 | 73 | mainbox { 74 | border: 0px; 75 | border-color: @ac; 76 | padding: 2; 77 | } 78 | 79 | listview { 80 | dynamic: true; 81 | fixed-height: 20%; 82 | text-color: @fg; 83 | border: 0px; 84 | border-radius : 12px; 85 | border-color: @ac; 86 | spacing: 5px; 87 | scrollbar: false; 88 | padding: 20px 12px 10px 20px; 89 | } 90 | 91 | element-text { 92 | background-color: inherit; 93 | text-color: inherit; 94 | padding: 3px; 95 | } 96 | 97 | element { 98 | border: 2px; 99 | padding: 0px; 100 | text-color: @fg; 101 | } 102 | element normal.normal { 103 | background-color: @bg; 104 | text-color: @white; 105 | } 106 | element normal.urgent { 107 | background-color: @bg; 108 | text-color: @white; 109 | } 110 | element normal.active { 111 | background-color: @bg; 112 | text-color: @white; 113 | } 114 | element selected.normal { 115 | background-color: @blui; 116 | border-radius : 5px; 117 | text-color: @blue; 118 | } 119 | element selected.urgent { 120 | background-color: @bg; 121 | text-color: @red; 122 | } 123 | element selected.active { 124 | background-color: @bg; 125 | text-color: @white; 126 | } 127 | element alternate.normal { 128 | background-color: @bg; 129 | text-color: @white; 130 | } 131 | element alternate.urgent { 132 | background-color: @bg; 133 | text-color: @white; 134 | } 135 | element alternate.active { 136 | background-color: @bg; 137 | text-color: @white; 138 | } 139 | 140 | sidebar { 141 | border: 2px; 142 | border-color: @ac; 143 | border-radius: 20px; 144 | } 145 | 146 | button { 147 | margin: 5px; 148 | padding: 5px; 149 | text-color: @yellow; 150 | border: 0px; 151 | border-radius: 20px; 152 | border-color: @yellow; 153 | } 154 | 155 | button selected { 156 | text-color: @fg; 157 | border: 3px; 158 | border-radius: 20px; 159 | border-color: @trans; 160 | } 161 | 162 | scrollbar { 163 | width: 4px; 164 | border: 0px; 165 | handle-color: @fg; 166 | handle-width: 8px; 167 | padding: 0; 168 | } 169 | 170 | message { 171 | border: 0px; 172 | border-color: @ac; 173 | padding: 1px; 174 | } 175 | 176 | textbox { 177 | text-color: @fg; 178 | } 179 | 180 | -------------------------------------------------------------------------------- /Dot files/Bspwm/sxhkd/sxhkdrc: -------------------------------------------------------------------------------- 1 | # 2 | # wm independent hotkeys 3 | # 4 | 5 | # terminal emulator 6 | super + Return 7 | alacritty 8 | 9 | 10 | 11 | #Screenshot 12 | super + Print 13 | flameshot gui 14 | 15 | 16 | # program launcher 17 | super + @space 18 | rofi -show run 19 | 20 | # Opening Rofi android menu 21 | super + a 22 | $HOME/.config/rofi/applets/android/apps.sh 23 | 24 | # make sxhkd reload its configuration files: 25 | super + Escape 26 | pkill -USR1 -x sxhkd 27 | 28 | # 29 | # bspwm hotkeys 30 | # 31 | 32 | # quit/restart bspwm 33 | super + alt + {q,r} 34 | bspc {quit,wm -r} 35 | 36 | # close and kill 37 | super + {_,shift + }w 38 | bspc node -{c,k} 39 | 40 | # alternate between the tiled and monocle layout 41 | super + m 42 | bspc desktop -l next 43 | 44 | # send the newest marked node to the newest preselected node 45 | super + y 46 | bspc node newest.marked.local -n newest.!automatic.local 47 | 48 | # swap the current node and the biggest window 49 | super + g 50 | bspc node -s biggest.window 51 | 52 | # 53 | # state/flags 54 | # 55 | 56 | # set the window state 57 | super + {t,shift + t,s,f} 58 | bspc node -t {tiled,pseudo_tiled,floating,fullscreen} 59 | 60 | # set the node flags 61 | super + ctrl + {m,x,y,z} 62 | bspc node -g {marked,locked,sticky,private} 63 | 64 | # 65 | # focus/swap 66 | # 67 | 68 | # focus the node in the given direction 69 | super + {_,shift + }{h,j,k,l} 70 | bspc node -{f,s} {west,south,north,east} 71 | 72 | # focus the node for the given path jump 73 | super + {p,b,comma,period} 74 | bspc node -f @{parent,brother,first,second} 75 | 76 | # focus the next/previous window in the current desktop 77 | super + {_,shift + }c 78 | bspc node -f {next,prev}.local.!hidden.window 79 | 80 | # focus the next/previous desktop in the current monitor 81 | super + bracket{left,right} 82 | bspc desktop -f {prev,next}.local 83 | 84 | # focus the last node/desktop 85 | super + {grave,Tab} 86 | bspc {node,desktop} -f last 87 | 88 | # focus the older or newer node in the focus history 89 | super + {o,i} 90 | bspc wm -h off; \ 91 | bspc node {older,newer} -f; \ 92 | bspc wm -h on 93 | 94 | # focus or send to the given desktop 95 | super + {_,shift + }{1-9,0} 96 | bspc {desktop -f,node -d} '^{1-9,10}' 97 | 98 | # 99 | # preselect 100 | # 101 | 102 | # preselect the direction 103 | super + ctrl + {h,j,k,l} 104 | bspc node -p {west,south,north,east} 105 | 106 | # preselect the ratio 107 | super + ctrl + {1-9} 108 | bspc node -o 0.{1-9} 109 | 110 | # cancel the preselection for the focused node 111 | super + ctrl + space 112 | bspc node -p cancel 113 | 114 | # cancel the preselection for the focused desktop 115 | super + ctrl + shift + space 116 | bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel 117 | 118 | 119 | # 120 | # move/resize 121 | # 122 | 123 | # expand a window by moving one of its side outward 124 | super + alt + {h,j,k,l} 125 | bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0} 126 | 127 | # contract a window by moving one of its side inward 128 | super + alt + shift + {h,j,k,l} 129 | bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0} 130 | 131 | # move a floating window 132 | super + {Left,Down,Up,Right} 133 | bspc node -v {-20 0,0 20,0 -20,20 0} 134 | -------------------------------------------------------------------------------- /Dot files/Bspwm/zathura/INSTALL.md: -------------------------------------------------------------------------------- 1 | ### [Zathura](https://pwmt.org/projects/zathura/) 2 | 3 | #### Install using Git 4 | 5 | If you are a git user, you can install the theme and keep up to date by cloning the repo: 6 | 7 | git clone https://github.com/dracula/zathura ~/.config/zathura/ 8 | 9 | #### Activating theme 10 | 11 | 1. Double check that it cloned correctly 12 | 2. Enjoy! 13 | -------------------------------------------------------------------------------- /Dot files/Bspwm/zathura/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2020 Ethan Carter Edwards 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Dot files/Bspwm/zathura/README.md: -------------------------------------------------------------------------------- 1 | # Dracula for [zathura](https://pwmt.org/projects/zathura/) 2 | 3 | > A dark theme for [Zathura](https://pwmt.org/projects/zathura/). 4 | 5 | ![Dark Mode](./screenshot.png) 6 | 7 | ![Light Mode](./lightmode.png) 8 | 9 | ## Install 10 | 11 | All instructions can be found at [draculatheme.com/zathura](https://draculatheme.com/zathura). 12 | 13 | ## Features 14 | 15 | - \ will switch between a light and dark background 16 | 17 | ## Team 18 | 19 | This theme is maintained by the following person(s) and a bunch of [awesome contributors](https://github.com/dracula/zathura/graphs/contributors). 20 | 21 | | [![Ethan Edwards](https://avatars1.githubusercontent.com/u/60861925?s=70&v=4)](https://github.com/ethancedwards8) | 22 | | ----------------------------------------------------------------------------------------------------------------- | 23 | | [Ethan Edwards](https://github.com/ethancedwards8) | 24 | 25 | ## Community 26 | 27 | - [Twitter](https://twitter.com/draculatheme) - Best for getting updates about themes and new stuff. 28 | - [GitHub](https://github.com/dracula/dracula-theme/discussions) - Best for asking questions and discussing issues. 29 | - [Discord](https://draculatheme.com/discord-invite) - Best for hanging out with the community. 30 | 31 | ## License 32 | 33 | [MIT License](./LICENSE) 34 | -------------------------------------------------------------------------------- /Dot files/Bspwm/zathura/lightmode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/zathura/lightmode.png -------------------------------------------------------------------------------- /Dot files/Bspwm/zathura/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/Bspwm/zathura/screenshot.png -------------------------------------------------------------------------------- /Dot files/Bspwm/zathura/zathurarc: -------------------------------------------------------------------------------- 1 | set window-title-basename "true" 2 | set selection-clipboard "clipboard" 3 | 4 | # color theme for Zathura 5 | # Swaps Foreground for Background to get a light version if the user prefers 6 | 7 | # 8 | # color theme 9 | # 10 | 11 | set notification-error-bg "#ff5555" # Red 12 | set notification-error-fg "#f8f8f2" # Foreground 13 | set notification-warning-bg "#ffb86c" # Orange 14 | set notification-warning-fg "#44475a" # Selection 15 | set notification-bg "#0d1c30" # Background 16 | set notification-fg "#f8f8f2" # Foreground 17 | 18 | set completion-bg "#0d1c30" # Background 19 | set completion-fg "#6272a4" # Comment 20 | set completion-group-bg "#282a36" # Background 21 | set completion-group-fg "#6272a4" # Comment 22 | set completion-highlight-bg "#44475a" # Selection 23 | set completion-highlight-fg "#f8f8f2" # Foreground 24 | 25 | set index-bg "#0d1c30" # Background 26 | set index-fg "#f8f8f2" # Foreground 27 | set index-active-bg "#44475a" # Current Line 28 | set index-active-fg "#f8f8f2" # Foreground 29 | 30 | set inputbar-bg "#282a36" # Background 31 | set inputbar-fg "#f8f8f2" # Foreground 32 | set statusbar-bg "#282a36" # Background 33 | set statusbar-fg "#f8f8f2" # Foreground 34 | 35 | set highlight-color "#ffb86c" # Orange 36 | set highlight-active-color "#ff79c6" # Pink 37 | 38 | set default-bg "#0d1c30" # Background 39 | set default-fg "#f8f8f2" # Foreground 40 | 41 | set render-loading true 42 | set render-loading-fg "#0d1c30" # Background 43 | set render-loading-bg "#f8f8f2" # Foreground 44 | 45 | # 46 | # Recolor mode settings 47 | # 48 | 49 | set recolor-lightcolor "#0d1c30" # Background 50 | set recolor-darkcolor "#f8f8f2" # Foreground 51 | 52 | # 53 | # Startup options 54 | # 55 | set adjust-open width 56 | set recolor true 57 | set guioptions none 58 | -------------------------------------------------------------------------------- /Dot files/Herbstluftwm/1: -------------------------------------------------------------------------------- 1 | 1 2 | -------------------------------------------------------------------------------- /Dot files/NOrmie2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/NOrmie2.png -------------------------------------------------------------------------------- /Dot files/house.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/house.jpg -------------------------------------------------------------------------------- /Dot files/i3-gaps/Rofi/slate.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/i3-gaps/Rofi/slate.tar.gz -------------------------------------------------------------------------------- /Dot files/i3-gaps/i3-config/autostart.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | xrandr --output VGA1 --mode 1368x768_60.00 & 3 | feh --bg-scale ~/Wallpaper/Aesthetics.jpg 4 | i3 gaps inner all set 11 & 5 | 6 | killall -q polybar 7 | 8 | # Wait until the processes have been shut down 9 | while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done 10 | 11 | polybar JIBON & 12 | 13 | 14 | compton & 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Dot files/i3-gaps/i3-config/config: -------------------------------------------------------------------------------- 1 | # This file has been auto-generated by i3-config-wizard(1). 2 | # It will not be overwritten, so edit it as you like. 3 | # 4 | # Should you change your keyboard layout some time, delete 5 | # this file and re-run i3-config-wizard(1). 6 | # 7 | 8 | # i3 config file (v4) 9 | # 10 | # Please see https://i3wm.org/docs/userguide.html for a complete reference! 11 | 12 | set $mod Mod4 13 | 14 | # Font for window titles. Will also be used by the bar unless a different font 15 | # is used in the bar {} block below. 16 | font pango:BeVietnam_regular 10 17 | 18 | # This font is widely installed, provides lots of unicode glyphs, right-to-left 19 | # text rendering and scalability on retina/hidpi displays (thanks to pango). 20 | #font pango:DejaVu Sans Mono 8 21 | 22 | # Start XDG autostart .desktop files using dex. See also 23 | # https://wiki.archlinux.org/index.php/XDG_Autostart 24 | exec --no-startup-id dex --autostart --environment i3 25 | 26 | # The combination of xss-lock, nm-applet and pactl is a popular choice, so 27 | # they are included here as an example. Modify as you see fit. 28 | 29 | # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the 30 | # screen before suspend. Use loginctl lock-session to lock your screen. 31 | exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork 32 | 33 | # NetworkManager is the most popular way to manage wireless networks on Linux, 34 | # and nm-applet is a desktop environment-independent system tray GUI for it. 35 | exec --no-startup-id nm-applet 36 | 37 | # Use pactl to adjust volume in PulseAudio. 38 | set $refresh_i3status killall -SIGUSR1 i3status 39 | bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status 40 | bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status 41 | bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status 42 | bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status 43 | 44 | # Use Mouse+$mod to drag floating windows to their wanted position 45 | floating_modifier $mod 46 | 47 | # start a terminal 48 | bindsym $mod+Return exec terminator 49 | # kill focused window 50 | bindsym $mod+Shift+q kill 51 | 52 | # start dmenu (a program launcher) 53 | bindsym $mod+d exec --no-startup-id rofi -show run 54 | # A more modern dmenu replacement is rofi: 55 | # bindcode $mod+40 exec "rofi -modi drun,run -show drun" 56 | # There also is i3-dmenu-desktop which only displays applications shipping a 57 | # .desktop file. It is a wrapper around dmenu, so you need that installed. 58 | # bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop 59 | 60 | # change focus 61 | bindsym $mod+j focus left 62 | bindsym $mod+k focus down 63 | bindsym $mod+l focus up 64 | bindsym $mod+semicolon focus right 65 | 66 | # alternatively, you can use the cursor keys: 67 | bindsym $mod+Left focus left 68 | bindsym $mod+Down focus down 69 | bindsym $mod+Up focus up 70 | bindsym $mod+Right focus right 71 | 72 | # move focused window 73 | bindsym $mod+Shift+j move left 74 | bindsym $mod+Shift+k move down 75 | bindsym $mod+Shift+l move up 76 | bindsym $mod+Shift+semicolon move right 77 | 78 | # alternatively, you can use the cursor keys: 79 | bindsym $mod+Shift+Left move left 80 | bindsym $mod+Shift+Down move down 81 | bindsym $mod+Shift+Up move up 82 | bindsym $mod+Shift+Right move right 83 | 84 | # split in horizontal orientation 85 | bindsym $mod+h split h 86 | 87 | # split in vertical orientation 88 | bindsym $mod+v split v 89 | 90 | # enter fullscreen mode for the focused container 91 | bindsym $mod+f fullscreen toggle 92 | 93 | # change container layout (stacked, tabbed, toggle split) 94 | bindsym $mod+s layout stacking 95 | bindsym $mod+w layout tabbed 96 | bindsym $mod+e layout toggle split 97 | 98 | # toggle tiling / floating 99 | bindsym $mod+Shift+space floating toggle 100 | 101 | # change focus between tiling / floating windows 102 | bindsym $mod+space focus mode_toggle 103 | 104 | # focus the parent container 105 | bindsym $mod+a focus parent 106 | 107 | # focus the child container 108 | #bindsym $mod+d focus child 109 | 110 | # Define names for default workspaces for which we configure key bindings later on. 111 | # We use variables to avoid repeating the names in multiple places. 112 | set $ws1 "1" 113 | set $ws2 "2" 114 | set $ws3 "3" 115 | set $ws4 "4" 116 | set $ws5 "5" 117 | set $ws6 "6" 118 | set $ws7 "7" 119 | set $ws8 "8" 120 | set $ws9 "9" 121 | set $ws10 "10" 122 | 123 | # switch to workspace 124 | bindsym $mod+1 workspace number $ws1 125 | bindsym $mod+2 workspace number $ws2 126 | bindsym $mod+3 workspace number $ws3 127 | bindsym $mod+4 workspace number $ws4 128 | bindsym $mod+5 workspace number $ws5 129 | bindsym $mod+6 workspace number $ws6 130 | bindsym $mod+7 workspace number $ws7 131 | bindsym $mod+8 workspace number $ws8 132 | bindsym $mod+9 workspace number $ws9 133 | bindsym $mod+0 workspace number $ws10 134 | 135 | # move focused container to workspace 136 | bindsym $mod+Shift+1 move container to workspace number $ws1 137 | bindsym $mod+Shift+2 move container to workspace number $ws2 138 | bindsym $mod+Shift+3 move container to workspace number $ws3 139 | bindsym $mod+Shift+4 move container to workspace number $ws4 140 | bindsym $mod+Shift+5 move container to workspace number $ws5 141 | bindsym $mod+Shift+6 move container to workspace number $ws6 142 | bindsym $mod+Shift+7 move container to workspace number $ws7 143 | bindsym $mod+Shift+8 move container to workspace number $ws8 144 | bindsym $mod+Shift+9 move container to workspace number $ws9 145 | bindsym $mod+Shift+0 move container to workspace number $ws10 146 | 147 | # reload the configuration file 148 | bindsym $mod+Shift+c reload 149 | # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) 150 | bindsym $mod+Shift+r restart 151 | # exit i3 (logs you out of your X session) 152 | bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" 153 | 154 | # resize window (you can also use the mouse for that) 155 | mode "resize" { 156 | # These bindings trigger as soon as you enter the resize mode 157 | 158 | # Pressing left will shrink the window’s width. 159 | # Pressing right will grow the window’s width. 160 | # Pressing up will shrink the window’s height. 161 | # Pressing down will grow the window’s height. 162 | bindsym j resize shrink width 10 px or 10 ppt 163 | bindsym k resize grow height 10 px or 10 ppt 164 | bindsym l resize shrink height 10 px or 10 ppt 165 | bindsym semicolon resize grow width 10 px or 10 ppt 166 | 167 | # same bindings, but for the arrow keys 168 | bindsym Left resize shrink width 10 px or 10 ppt 169 | bindsym Down resize grow height 10 px or 10 ppt 170 | bindsym Up resize shrink height 10 px or 10 ppt 171 | bindsym Right resize grow width 10 px or 10 ppt 172 | 173 | # back to normal: Enter or Escape or $mod+r 174 | bindsym Return mode "default" 175 | bindsym Escape mode "default" 176 | bindsym $mod+r mode "default" 177 | } 178 | 179 | bindsym $mod+r mode "resize" 180 | 181 | # Start i3bar to display a workspace bar (plus the system information i3status 182 | # finds out, if available) 183 | 184 | 185 | # You can also use any non-zero value if you'd like to have a border 186 | for_window [class=".*"] border pixel 0 187 | 188 | # Autostart 189 | exec_always --no-startup-id ~/.config/i3/autostart.sh 190 | 191 | 192 | # keybinds 193 | bindsym $mod+b exec chromium 194 | bindsym $mod+c exec discord 195 | 196 | 197 | -------------------------------------------------------------------------------- /Dot files/ign_waifu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cybi00000/Normie-rice/60dd697dce974b9bbdc6cbc9fe7371bc721a7c00/Dot files/ign_waifu.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 |

3 | 4 |

5 |

6 | 7 | 8 |

9 | 10 |

11 | BSPWM RICE 12 |

13 | img 14 | 15 | 16 | Here my **BSPWM** configuration. 17 | Here are some details about my setup: 18 | 19 | - **WM:** [bspwm](https://github.com/baskerville/bspwm) 20 | - **OS:** [Arch Linux](https://archlinux.org) 21 | - **Terminal:** [Alacritty](https://github.com/alacritty/alacritty) 22 | - **Shell:** [zsh](https://wiki.archlinux.org/index.php/Zsh) 23 | - **Widgets:** [eww](https://github.com/elkowar/eww) 24 | - **Compositor:** [picom](https://github.com/yshui/picom) 25 | - **Browser:** [Waterfox](https://www.waterfox.net) 26 | - **Application Launcher:** [rofi](https://github.com/davatorium/rofi) 27 | - **Dock**: [Polybar](https://github.com/polybar/polybar) 28 | - **Notification** : [Dunst](https://github.com/dunst-project/dunst) 29 | - **Wallpaper**: [Wallpaper](https://raw.githubusercontent.com/cybi00000/Normie-rice/main/Dot%20files/house.jpg) 30 | - **Fetcher** : [Pfetch-btw](https://github.com/FedericoAntoniazzi/pfetch-btw) 31 | - **Cli-file-explorer** : [Ranger](https://github.com/ranger/ranger) 32 | - **Document-Viewer** : [Zathura](https://pwmt.org/projects/zathura) 33 | - **Spotify-themer** : [Spicetify](https://spicetify.app) 34 | 35 | ## Font Used 36 | ```sh 37 | Firacode Nerd Font 38 | JetBrains Nerd Mono Font 39 | Quicksand Font 40 | Font Awesome 41 | ``` 42 |

43 | Bye 44 |

45 | 46 | --- 47 | 48 | 49 | 50 | 51 | 52 |

53 | I3 RICE 54 |

55 | img 56 | 57 | Here my **i3-Gaps** configuration. 58 | Setup Info: 59 | 60 | - **Wallpaper**: [Ichigoame](https://gelbooru.com/index.php?page=post&s=view&id=6195212&tags=ichigoame+). 61 | - **Dock**: [Polybar](https://github.com/polybar/polybar) 62 | - **Wm**: [i3-gaps](https://github.com/Airblader/i3) 63 | - **Terminal Font**: Bevietnam 64 | - **Terminal** : [Terminator](https://github.com/gnome-terminator/terminator) 65 | - **compositor** : [Picom jonnaburg fork](https://github.com/jonaburg/picom) 66 | - **Notification** : [Dunst](https://github.com/dunst-project/dunst) 67 | - **Application Launcher:** [rofi](https://github.com/davatorium/rofi) 68 | - **Rofi theme** : [adi1090](https://github.com/adi1090x/rofi)* (I modified the theme to my liking) 69 | 70 |

71 | Bye 72 |

73 | 74 | --- 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | --------------------------------------------------------------------------------