├── 2bwm └── .config │ └── 2bwm │ └── config.h ├── LICENSE ├── README.md ├── X ├── .Xresources-gruvbox ├── .Xresources-rose-pine-dawn └── .Xresources-tomorrow ├── bspwm └── .config │ └── bspwm │ ├── autostart.sh │ ├── bspwmrc │ └── sxhkdrc ├── dmenu └── .config │ └── dmenu │ └── config.h ├── hyprland └── .config │ └── hypr │ ├── binds.conf │ ├── decoration.conf │ ├── hyprland.conf │ └── plugins │ └── titlebars.conf ├── kitty └── .config │ └── kitty │ └── kitty.conf ├── nvim └── .config │ └── nvim │ ├── init.lua │ ├── lazy-lock.json │ └── lua │ ├── plugins.lua │ ├── plugins │ ├── alpha.lua │ ├── completions.lua │ ├── lsp-plugins.lua │ ├── lualine.lua │ ├── luasnip.lua │ ├── neotree.lua │ ├── rose-pine.lua │ ├── telescope.lua │ └── treesitter.lua │ └── vim-opts.lua ├── picom └── .config │ └── picom │ └── picom.conf ├── polybar └── .config │ └── polybar │ └── config.ini ├── rofi └── .config │ └── rofi │ ├── colors │ ├── adapta.rasi │ ├── arc.rasi │ ├── black.rasi │ ├── catppuccin.rasi │ ├── cyberpunk.rasi │ ├── dracula.rasi │ ├── everforest.rasi │ ├── gruvbox.rasi │ ├── lovelace.rasi │ ├── navy.rasi │ ├── nord.rasi │ ├── onedark.rasi │ ├── paper.rasi │ ├── rose-pine.rasi │ ├── solarized.rasi │ ├── tokyonight.rasi │ ├── tomorrow.rasi │ └── yousai.rasi │ ├── config.rasi │ ├── launchers │ ├── launcher.sh │ ├── shared │ │ ├── colors.rasi │ │ └── fonts.rasi │ └── style.rasi │ └── powermenu │ ├── powermenu.sh │ ├── shared │ ├── colors.rasi │ └── fonts.rasi │ └── style.rasi └── waybar └── .config └── waybar ├── config.jsonc └── style.css /2bwm/.config/2bwm/config.h: -------------------------------------------------------------------------------- 1 | // ___ _ // 2 | // |__ \| | // 3 | // ) | |____ ___ __ ___ // 4 | // / /| '_ \ \ /\ / / '_ ` _ \ // 5 | // / /_| |_) \ V V /| | | | | | // 6 | // |____|_.__/ \_/\_/ |_| |_| |_| // 7 | 8 | 9 | // define mod key // 10 | #define MOD XCB_MOD_MASK_4 11 | /* window speed 12 | *0)move step slow 1)move step fast 13 | *2)mouse slow 3)mouse fast */ 14 | static const uint16_t movements[] = {20,40,15,400}; 15 | static const bool resize_by_line = true; 16 | static const float resize_keep_aspect_ratio= 1.03; 17 | /// offset /// 18 | /*0)offsetx 1)offsety 19 | *2)maxwidth 3)maxheight */ 20 | static const uint8_t offsets[] = {0,0,0,0}; 21 | // colors // 22 | /*0)focuscol 1)unfocuscol 23 | *2)fixedcol 3)unkilcol 24 | *4)fixedunkilcol 5)outerbordercol 25 | *6)emptycol */ 26 | static const char *colors[] = {"#a7c080","#232a2e","#7a8c5c","#ff6666","#cc9933","#232a2e","#000000"}; 27 | static const bool inverted_colors = false; 28 | #define CURSOR_POSITION MIDDLE 29 | /// borders /// 30 | /*0) Outer border size. If you put this negative it will be a square. 31 | *1) Full borderwidth 2) Magnet border size 32 | *3) Resize border size */ 33 | static const uint8_t borders[] = {5,7,2,3}; 34 | #define LOOK_INTO "WM_NAME" 35 | static const char *ignore_names[] = {"bar", "xclock"}; 36 | /// programs /// 37 | static const char *term[] = { "st", NULL }; 38 | static const char *menucmd[] = { "dmenu_run", NULL }; 39 | /// example foo /// 40 | static void halfandcentered(const Arg *arg) 41 | { 42 | Arg arg2 = {.i=TWOBWM_MAXHALF_VERTICAL_LEFT}; 43 | maxhalf(&arg2); 44 | Arg arg3 = {.i=TWOBWM_TELEPORT_CENTER}; 45 | teleport(&arg3); 46 | } 47 | /// sloppy focus /// 48 | static const char *sloppy_switch_cmd[] = {}; 49 | static void toggle_sloppy(const Arg *arg) 50 | { 51 | is_sloppy = !is_sloppy; 52 | if (arg->com != NULL && LENGTH(arg->com) > 0) { 53 | start(arg); 54 | } 55 | } 56 | /// shortcuts /// 57 | 58 | #define DESKTOPCHANGE(K,N) \ 59 | { MOD , K, changeworkspace, {.i=N}}, \ 60 | { MOD |SHIFT, K, sendtoworkspace, {.i=N}}, 61 | static key keys[] = { 62 | /* modifier key function argument */ 63 | // Focus to next/previous window 64 | { MOD , XK_Tab, focusnext, {.i=TWOBWM_FOCUS_NEXT}}, 65 | { MOD |SHIFT, XK_Tab, focusnext, {.i=TWOBWM_FOCUS_PREVIOUS}}, 66 | { MOD , XK_q, deletewin, {}}, 67 | { MOD |SHIFT, XK_k, resizestep, {.i=TWOBWM_RESIZE_UP}}, 68 | { MOD |SHIFT, XK_j, resizestep, {.i=TWOBWM_RESIZE_DOWN}}, 69 | { MOD |SHIFT, XK_l, resizestep, {.i=TWOBWM_RESIZE_RIGHT}}, 70 | { MOD |SHIFT, XK_h, resizestep, {.i=TWOBWM_RESIZE_LEFT}}, 71 | { MOD |SHIFT|CONTROL,XK_k, resizestep, {.i=TWOBWM_RESIZE_UP_SLOW}}, 72 | { MOD |SHIFT|CONTROL,XK_j, resizestep, {.i=TWOBWM_RESIZE_DOWN_SLOW}}, 73 | { MOD |SHIFT|CONTROL,XK_l, resizestep, {.i=TWOBWM_RESIZE_RIGHT_SLOW}}, 74 | { MOD |SHIFT|CONTROL,XK_h, resizestep, {.i=TWOBWM_RESIZE_LEFT_SLOW}}, 75 | { MOD , XK_k, movestep, {.i=TWOBWM_MOVE_UP}}, 76 | { MOD , XK_j, movestep, {.i=TWOBWM_MOVE_DOWN}}, 77 | { MOD , XK_l, movestep, {.i=TWOBWM_MOVE_RIGHT}}, 78 | { MOD , XK_h, movestep, {.i=TWOBWM_MOVE_LEFT}}, 79 | { MOD |CONTROL, XK_k, movestep, {.i=TWOBWM_MOVE_UP_SLOW}}, 80 | { MOD |CONTROL, XK_j, movestep, {.i=TWOBWM_MOVE_DOWN_SLOW}}, 81 | { MOD |CONTROL, XK_l, movestep, {.i=TWOBWM_MOVE_RIGHT_SLOW}}, 82 | { MOD |CONTROL, XK_h, movestep, {.i=TWOBWM_MOVE_LEFT_SLOW}}, 83 | { MOD , XK_g, teleport, {.i=TWOBWM_TELEPORT_CENTER}}, 84 | { MOD |SHIFT, XK_g, teleport, {.i=TWOBWM_TELEPORT_CENTER_Y}}, 85 | { MOD |CONTROL, XK_g, teleport, {.i=TWOBWM_TELEPORT_CENTER_X}}, 86 | { MOD , XK_y, teleport, {.i=TWOBWM_TELEPORT_TOP_LEFT}}, 87 | { MOD , XK_u, teleport, {.i=TWOBWM_TELEPORT_TOP_RIGHT}}, 88 | { MOD , XK_b, teleport, {.i=TWOBWM_TELEPORT_BOTTOM_LEFT}}, 89 | { MOD , XK_n, teleport, {.i=TWOBWM_TELEPORT_BOTTOM_RIGHT}}, 90 | { MOD , XK_Home, resizestep_aspect, {.i=TWOBWM_RESIZE_KEEP_ASPECT_GROW}}, 91 | { MOD , XK_End, resizestep_aspect, {.i=TWOBWM_RESIZE_KEEP_ASPECT_SHRINK}}, 92 | { MOD , XK_x, maximize, {}}, 93 | { MOD |SHIFT , XK_x, fullscreen, {}}, 94 | { MOD , XK_m, maxvert_hor, {.i=TWOBWM_MAXIMIZE_VERTICALLY}}, 95 | { MOD |SHIFT, XK_m, maxvert_hor, {.i=TWOBWM_MAXIMIZE_HORIZONTALLY}}, 96 | { MOD |SHIFT, XK_y, maxhalf, {.i=TWOBWM_MAXHALF_VERTICAL_LEFT}}, 97 | { MOD |SHIFT, XK_u, maxhalf, {.i=TWOBWM_MAXHALF_VERTICAL_RIGHT}}, 98 | { MOD |SHIFT, XK_b, maxhalf, {.i=TWOBWM_MAXHALF_HORIZONTAL_BOTTOM}}, 99 | { MOD |SHIFT, XK_n, maxhalf, {.i=TWOBWM_MAXHALF_HORIZONTAL_TOP}}, 100 | { MOD |SHIFT|CONTROL,XK_y, maxhalf, {.i=TWOBWM_MAXHALF_FOLD_VERTICAL}}, 101 | { MOD |SHIFT|CONTROL,XK_b, maxhalf, {.i=TWOBWM_MAXHALF_FOLD_HORIZONTAL}}, 102 | { MOD |SHIFT|CONTROL,XK_u, maxhalf, {.i=TWOBWM_MAXHALF_UNFOLD_VERTICAL}}, 103 | { MOD |SHIFT|CONTROL,XK_n, maxhalf, {.i=TWOBWM_MAXHALF_UNFOLD_HORIZONTAL}}, 104 | { MOD , XK_comma, changescreen, {.i=TWOBWM_NEXT_SCREEN}}, 105 | { MOD , XK_period, changescreen, {.i=TWOBWM_PREVIOUS_SCREEN}}, 106 | { MOD , XK_r, raiseorlower, {}}, 107 | { MOD , XK_v, nextworkspace, {}}, 108 | { MOD , XK_c, prevworkspace, {}}, 109 | { MOD |SHIFT , XK_v, sendtonextworkspace,{}}, 110 | { MOD |SHIFT , XK_c, sendtoprevworkspace,{}}, 111 | { MOD , XK_i, hide, {}}, 112 | { MOD , XK_a, unkillable, {}}, 113 | { MOD, XK_t, always_on_top, {}}, 114 | { MOD , XK_f, fix, {}}, 115 | { MOD , XK_Up, cursor_move, {.i=TWOBWM_CURSOR_UP_SLOW}}, 116 | { MOD , XK_Down, cursor_move, {.i=TWOBWM_CURSOR_DOWN_SLOW}}, 117 | { MOD , XK_Right, cursor_move, {.i=TWOBWM_CURSOR_RIGHT_SLOW}}, 118 | { MOD , XK_Left, cursor_move, {.i=TWOBWM_CURSOR_LEFT_SLOW}}, 119 | { MOD |SHIFT, XK_Up, cursor_move, {.i=TWOBWM_CURSOR_UP}}, 120 | { MOD |SHIFT, XK_Down, cursor_move, {.i=TWOBWM_CURSOR_DOWN}}, 121 | { MOD |SHIFT, XK_Right, cursor_move, {.i=TWOBWM_CURSOR_RIGHT}}, 122 | { MOD |SHIFT, XK_Left, cursor_move, {.i=TWOBWM_CURSOR_LEFT}}, 123 | { MOD , XK_p, start, {.com = menucmd}}, 124 | { MOD , XK_Return, start, {.com = term}}, 125 | { MOD |CONTROL, XK_q, twobwm_exit, {.i=0}}, 126 | { MOD |CONTROL, XK_r, twobwm_restart, {.i=0}}, 127 | { MOD , XK_space, halfandcentered, {.i=0}}, 128 | { MOD , XK_s, toggle_sloppy, {.com = sloppy_switch_cmd}}, 129 | DESKTOPCHANGE( XK_1, 0) 130 | DESKTOPCHANGE( XK_2, 1) 131 | DESKTOPCHANGE( XK_3, 2) 132 | DESKTOPCHANGE( XK_4, 3) 133 | DESKTOPCHANGE( XK_5, 4) 134 | DESKTOPCHANGE( XK_6, 5) 135 | DESKTOPCHANGE( XK_7, 6) 136 | DESKTOPCHANGE( XK_8, 7) 137 | DESKTOPCHANGE( XK_9, 8) 138 | DESKTOPCHANGE( XK_0, 9) 139 | }; 140 | static Button buttons[] = { 141 | { MOD ,XCB_BUTTON_INDEX_1, mousemotion, {.i=TWOBWM_MOVE}, false}, 142 | { MOD ,XCB_BUTTON_INDEX_3, mousemotion, {.i=TWOBWM_RESIZE}, false}, 143 | { 0 ,XCB_BUTTON_INDEX_3, start, {.com = menucmd}, true}, 144 | { MOD|SHIFT, XCB_BUTTON_INDEX_1, changeworkspace, {.i=0}, false}, 145 | { MOD|SHIFT, XCB_BUTTON_INDEX_3, changeworkspace, {.i=1}, false}, 146 | { MOD|ALT, XCB_BUTTON_INDEX_1, changescreen, {.i=1}, false}, 147 | { MOD|ALT, XCB_BUTTON_INDEX_3, changescreen, {.i=0}, false} 148 | }; 149 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Yusa 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 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # welcome to my dotfiles 2 | thx for visiting 🩷, these are my hyprland, 2bwm and bspwm rices! feel free to give a star or fork it! 3 | 4 | ## usage 5 | recomend using with GNU stow for auto symlinks into the folders to a better experience 6 | 7 | ### installing it: 8 | 9 | void linux 10 | 11 | ```sh-session 12 | xbps-install -S stow 13 | ``` 14 | 15 | debian/ubuntu 16 | 17 | ```sh-session 18 | apt install stow 19 | ``` 20 | 21 | arch 22 | 23 | ```sh-session 24 | pacman -S stow 25 | ``` 26 | 27 | fedora 28 | 29 | ```sh-session 30 | dnf install stow 31 | ``` 32 | 33 | gentoo 34 | 35 | ```sh-session 36 | emerge -v stow 37 | ``` 38 | 39 | 40 | ### symlinking it 41 | now just "stow" your prefered rice! remember that the folder/file MUST not exist 42 | 43 | example: 44 | ```sh-session 45 | stow dotfiles/polybar 46 | ``` 47 | 48 | on Xresources, rename the chosen theme to '.Xresources' and symlink 49 | 50 | 51 | ## everything used on rices 🌊 52 | 53 | + os: [void](voidlinux.org) 🌀 54 | 55 | + wms: [bspwm](https://github.com/baskerville/bspwm), [hyprland](https://hyprland.org/), [2bwm](https://github.com/venam/2bwm) 🪟 56 | 57 | + terminal: [st](https://github.com/siduck/st), [kitty](https://sw.kovidgoyal.net/kitty/) 🖥️ 58 | 59 | + colorscheme: [catppuccin mocha](https://github.com/catppuccin/catppuccin) & [everforest](https://github.com/sainnhe/everforest) 🎨 60 | 61 | + font: [sq](https://github.com/leahneukirchen/sq) and [jet brains mono nerd font](https://www.nerdfonts.com/) 🌟 62 | 63 | 64 | 65 | ### screenshots 📷 66 | ![bf2vmrol9zhc1](https://github.com/yusamock/dotfiles/assets/141967852/fd07a95b-e53f-4003-9218-acb9d3271245) 67 | 68 | ![bspwm](https://github.com/yusamock/dotfiles/assets/141967852/389ecaee-3758-4e21-abb7-e5ad51b03b2c) 69 | 70 | ![hyprland](https://cdn.discordapp.com/attachments/635625917623828520/1221944874048295022/hyprland.png?ex=66146bd8&is=6601f6d8&hm=b073f72aa5f359a5968e3211111b1f919e5f3ea37b4545a5d6c04d82c1b59275&) 71 | 72 | ![20240217_00h05m24s_grim](https://github.com/yusamock/dotfiles/assets/141967852/569465d5-d977-4aa0-9d7f-22947f65d6b1) 73 | 74 | 75 | 76 | # credits 💌 77 | 78 | [GabrielTwmLinux](https://github.com/GabrielTWMlinux) for the scripts <3 79 | -------------------------------------------------------------------------------- /X/.Xresources-gruvbox: -------------------------------------------------------------------------------- 1 | ! gruvboxy:3 2 | 3 | ! colors 4 | *.foreground: #ebdbb2 5 | *.background: #282828 6 | 7 | ! black 8 | *.color0: #282828 9 | *.color8: #928374 10 | 11 | ! red 12 | *.color1: #cc241d 13 | *.color9: #fb4934 14 | 15 | ! green 16 | *.color2: #98971a 17 | *.color10: #b8bb26 18 | 19 | ! yellow 20 | *.color3: #d79921 21 | *.color11: #fabd2f 22 | 23 | ! blue 24 | *.color4: #458588 25 | *.color12: #83a598 26 | 27 | ! magenta 28 | *.color5: #b16286 29 | *.color13: #d3869b 30 | 31 | ! cyan 32 | *.color6: #689d6a 33 | *.color14: #8ec07c 34 | 35 | ! white 36 | *.color7: #a89984 37 | *.color15: #ebdbb2 38 | 39 | ! st 40 | st.borderpx: 55 41 | -------------------------------------------------------------------------------- /X/.Xresources-rose-pine-dawn: -------------------------------------------------------------------------------- 1 | ! __ ___ __ ___ _ __ ___ ___ 2 | ! \ \/ / '__/ __| '__/ __/ __| 3 | ! > <| | \__ \ | | (__\__ \ 4 | ! /_/\_\_| |___/_| \___|___/ 5 | 6 | ! This file works for siduck's st and URxvt 7 | 8 | 9 | ! URxvt 10 | URxvt.scrollBar: false 11 | URxvt.scrollBar_right: false 12 | URxvt.scrollBar_floating: false URxvt.scrollstyle: rxvt 13 | URxvt*font: xft:JetBrainsMono NerdFont:size=12 14 | URxvt.internalBorder: 35 15 | 16 | 17 | Xft.dpi: 96 18 | Xft.antialias: true 19 | Xft.rgba: rgb 20 | Xft.hinting: true 21 | Xft.hintstyle: hintslight 22 | Xft.autohint: false 23 | Xft.lcdfilter: lcddefault 24 | 25 | ! special 26 | *.foreground: #575279 27 | *.background: #faf4ed 28 | *.cursorColor: #575279 29 | 30 | ! black 31 | *.color0: #fffaf3 32 | *.color8: #f2e9e1 33 | 34 | ! red 35 | *.color1: #b4637a 36 | *.color9: #b4637a 37 | 38 | ! green 39 | *.color2: #ea9d34 40 | *.color10: #ea9d34 41 | 42 | ! yellow 43 | *.color3: #d7827e 44 | *.color11: #d7827e 45 | 46 | ! blue 47 | *.color4: #286983 48 | *.color12: #286983 49 | 50 | ! magenta 51 | *.color5: #907aa9 52 | *.color13: #907aa9 53 | 54 | ! cyan 55 | *.color6: #56949f 56 | *.color14: #56949f 57 | 58 | ! white 59 | *.color7: #9893a5 60 | *.color15: #797593 61 | 62 | ! st 63 | st.borderpx: 35 64 | -------------------------------------------------------------------------------- /X/.Xresources-tomorrow: -------------------------------------------------------------------------------- 1 | !TomorrowNightBright 2 | #define t_background #010101 3 | #define t_current_line #2a2a2a 4 | #define t_selection #424242 5 | #define t_foreground #eaeaea 6 | #define t_comment #969896 7 | #define t_red #d54e53 8 | #define t_orange #e78c45 9 | #define t_yellow #e7c547 10 | #define t_green #b9ca4a 11 | #define t_aqua #70c0b1 12 | #define t_blue #7aa6da 13 | #define t_purple #c397d8 14 | 15 | 16 | *.foreground: t_foreground 17 | *.background: t_background 18 | *.cursorColor: #aeafad 19 | 20 | ! Black / Grey 21 | *.color0: #000000 22 | *.color8: #666666 23 | 24 | ! Red / Bright Red 25 | *.color1: t_red 26 | *.color9: #FF3334 27 | 28 | ! Green + Bright Green 29 | *.color2: t_green 30 | *.color10: #9ec400 31 | 32 | ! Yellow (Orange) + Bright Yellow (Yellow) 33 | *.color3: t_orange 34 | *.color11: t_yellow 35 | 36 | ! Blue + Bright Blue 37 | *.color4: t_blue 38 | *.color12: t_blue 39 | 40 | ! Magenta (Purple) + Bright Magenta 41 | *.color5: t_purple 42 | *.color13: #b777e0 43 | 44 | ! Cyan (Aqua) + Bright Cyan 45 | *.color6: t_aqua 46 | *.color14: #54ced6 47 | 48 | ! Light Grey (Selection) + White (Current Line) 49 | *.color7: t_selection 50 | *.color15: t_current_line 51 | -------------------------------------------------------------------------------- /bspwm/.config/bspwm/autostart.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | polybar & 4 | xrandr -r 165 & 5 | wireplumber & 6 | piepwire & 7 | picom & 8 | xsetroot -cursor_name left_ptr & 9 | feh --bg-scale ~/.local/share/walls/street.jpg & 10 | -------------------------------------------------------------------------------- /bspwm/.config/bspwm/bspwmrc: -------------------------------------------------------------------------------- 1 | # _ 2 | # | | 3 | # | |__ ___ _ ____ ___ __ ___ 4 | # | '_ \/ __| '_ \ \ /\ / / '_ ` _ \ 5 | # | |_) \__ \ |_) \ V V /| | | | | | 6 | # |_.__/|___/ .__/ \_/\_/ |_| |_| |_| 7 | # | | 8 | # |_| 9 | 10 | 11 | #! /bin/sh 12 | 13 | pgrep -x sxhkd > /dev/null || sxhkd & 14 | 15 | bspc monitor -d a s d f g h j k l z 16 | 17 | bspc config border_width 0 18 | bspc config focus_follows_pointer true 19 | bspc config window_gap 40 20 | 21 | bspc config split_ratio 0.52 22 | bspc config gapless_monocle true 23 | 24 | bspc rule -a Chromium desktop='^2' 25 | bspc rule -a Screenkey manage=off 26 | 27 | # autostart 28 | 29 | sxhkd -c ~/.config/bspwm/sxhkdrc & 30 | $HOME/.config/bspwm/autostart.sh & 31 | -------------------------------------------------------------------------------- /bspwm/.config/bspwm/sxhkdrc: -------------------------------------------------------------------------------- 1 | # _ _ _ 2 | # | | | | | | 3 | # _____ _| |__ | | ____| | 4 | # / __\ \/ / '_ \| |/ / _` | 5 | # \__ \> <| | | | < (_| | 6 | # |___/_/\_\_| |_|_|\_\__,_| 7 | 8 | 9 | # 10 | # wm independent hotkeys 11 | # 12 | 13 | # terminal emulator 14 | super + Return 15 | st 16 | 17 | # st as root 18 | super + alt + Return 19 | st -e sudo su - 20 | 21 | # program launcher 22 | super + @space 23 | sh ~/.config/rofi/launchers/launcher.sh 24 | 25 | # powermenu 26 | super + k 27 | sh ~/.config/rofi/powermenu/powermenu.sh 28 | 29 | # scrot 30 | super + i 31 | scrot 32 | 33 | # make sxhkd reload its configuration files: 34 | super + Escape 35 | pkill -USR1 -x sxhkd 36 | 37 | # 38 | # bspwm hotkeys 39 | # 40 | 41 | # quit/restart bspwm 42 | super + alt + {q,r} 43 | bspc {quit,wm -r} 44 | 45 | # close and kill 46 | super + {_,shift + }q 47 | bspc node -{c,k} 48 | 49 | # alternate between the tiled and monocle layout 50 | super + m 51 | bspc desktop -l next 52 | 53 | # send the newest marked node to the newest preselected node 54 | super + y 55 | bspc node newest.marked.local -n newest.!automatic.local 56 | 57 | # swap the current node and the biggest window 58 | super + g 59 | bspc node -s biggest.window 60 | 61 | # 62 | # state/flags 63 | # 64 | 65 | # set the window state 66 | super + {t,shift + t,s,f} 67 | bspc node -t {tiled,pseudo_tiled,floating,fullscreen} 68 | 69 | # set the node flags 70 | super + ctrl + {m,x,y,z} 71 | bspc node -g {marked,locked,sticky,private} 72 | 73 | # 74 | # focus/swap 75 | # 76 | 77 | # focus the node in the given direction 78 | super + {_,shift + }{h,j,k,l} 79 | bspc node -{f,s} {west,south,north,east} 80 | 81 | # focus the node for the given path jump 82 | super + {p,b,comma,period} 83 | bspc node -f @{parent,brother,first,second} 84 | 85 | # focus the next/previous window in the current desktop 86 | super + {_,shift + }c 87 | bspc node -f {next,prev}.local.!hidden.window 88 | 89 | # focus the next/previous desktop in the current monitor 90 | super + bracket{left,right} 91 | bspc desktop -f {prev,next}.local 92 | 93 | # focus the last node/desktop 94 | super + {grave,Tab} 95 | bspc {node,desktop} -f last 96 | 97 | # focus the older or newer node in the focus history 98 | super + {o,i} 99 | bspc wm -h off; \ 100 | bspc node {older,newer} -f; \ 101 | bspc wm -h on 102 | 103 | # focus or send to the given desktop 104 | super + {_,shift + }{1-9,0} 105 | bspc {desktop -f,node -d} '^{1-9,10}' 106 | 107 | # 108 | # preselect 109 | # 110 | 111 | # preselect the direction 112 | super + ctrl + {h,j,k,l} 113 | bspc node -p {west,south,north,east} 114 | 115 | # preselect the ratio 116 | super + ctrl + {1-9} 117 | bspc node -o 0.{1-9} 118 | 119 | # cancel the preselection for the focused node 120 | super + ctrl + space 121 | bspc node -p cancel 122 | 123 | # cancel the preselection for the focused desktop 124 | super + ctrl + shift + space 125 | bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel 126 | 127 | # 128 | # move/resize 129 | # 130 | 131 | # expand a window by moving one of its side outward 132 | super + alt + {h,j,k,l} 133 | bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0} 134 | 135 | # contract a window by moving one of its side inward 136 | super + alt + shift + {h,j,k,l} 137 | bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0} 138 | 139 | # move a floating window 140 | super + {Left,Down,Up,Right} 141 | bspc node -v {-20 0,0 20,0 -20,20 0} 142 | -------------------------------------------------------------------------------- /dmenu/.config/dmenu/config.h: -------------------------------------------------------------------------------- 1 | /* _ 2 | | | 3 | __| |_ __ ___ ___ _ __ _ _ 4 | / _` | '_ ` _ \ / _ \ '_ \| | | | 5 | | (_| | | | | | | __/ | | | |_| | 6 | \__,_|_| |_| |_|\___|_| |_|\__,_| 7 | */ 8 | 9 | 10 | 11 | 12 | /* cool-ish dmenu config */ 13 | 14 | static int topbar = 1; 15 | static const char *fonts[] = { 16 | "JetBrainsMono Nerd Font:size=10" 17 | }; 18 | static const char *prompt = NULL; 19 | static const char *colors[SchemeLast][2] = { 20 | /* fg bg */ 21 | [SchemeNorm] = { "#e0def4", "#191724" }, 22 | [SchemeSel] = { "#191724", "#31748f" }, 23 | [SchemeOut] = { "#000000", "#00ffff" }, 24 | }; 25 | 26 | 27 | static unsigned int lines = 0; 28 | 29 | static const char worddelimiters[] = " "; 30 | -------------------------------------------------------------------------------- /hyprland/.config/hypr/binds.conf: -------------------------------------------------------------------------------- 1 | # keybinds 2 | 3 | bind = $mainMod, Return, exec, $terminal 4 | bind = $mainMod, Q, killactive, 5 | bind = $mainMod, M, exit, 6 | bind = $mainMod, E, exec, $fileManager 7 | bind = $mainMod, V, togglefloating, 8 | bind = $mainMod, R, exec, $menu 9 | bind = $mainMod, P, pseudo, 10 | 11 | bind = $mainMod, left, movefocus, l 12 | bind = $mainMod, right, movefocus, r 13 | bind = $mainMod, up, movefocus, u 14 | bind = $mainMod, down, movefocus, d 15 | 16 | bind = $mainMod, 1, workspace, 1 17 | bind = $mainMod, 2, workspace, 2 18 | bind = $mainMod, 3, workspace, 3 19 | bind = $mainMod, 4, workspace, 4 20 | bind = $mainMod, 5, workspace, 5 21 | bind = $mainMod, 6, workspace, 6 22 | bind = $mainMod, 7, workspace, 7 23 | bind = $mainMod, 8, workspace, 8 24 | bind = $mainMod, 9, workspace, 9 25 | bind = $mainMod, 0, workspace, 10 26 | 27 | bind = $mainMod SHIFT, 1, movetoworkspace, 1 28 | bind = $mainMod SHIFT, 2, movetoworkspace, 2 29 | bind = $mainMod SHIFT, 3, movetoworkspace, 3 30 | bind = $mainMod SHIFT, 4, movetoworkspace, 4 31 | bind = $mainMod SHIFT, 5, movetoworkspace, 5 32 | bind = $mainMod SHIFT, 6, movetoworkspace, 6 33 | bind = $mainMod SHIFT, 7, movetoworkspace, 7 34 | bind = $mainMod SHIFT, 8, movetoworkspace, 8 35 | bind = $mainMod SHIFT, 9, movetoworkspace, 9 36 | bind = $mainMod SHIFT, 0, movetoworkspace, 10 37 | 38 | bindm = $mainMod, mouse:272, movewindow 39 | bindm = $mainMod, mouse:273, resizewindow 40 | -------------------------------------------------------------------------------- /hyprland/.config/hypr/decoration.conf: -------------------------------------------------------------------------------- 1 | general { 2 | 3 | gaps_in = 10 4 | gaps_out = 30 5 | 6 | border_size = 0 7 | layout = dwindle 8 | 9 | allow_tearing = false 10 | } 11 | 12 | decoration { 13 | rounding = 1 14 | 15 | blur { 16 | enabled = true 17 | size = 3 18 | passes = 1 19 | } 20 | 21 | drop_shadow = yes 22 | shadow_range = 4 23 | shadow_render_power = 3 24 | col.shadow = rgba(1a1a1aee) 25 | } 26 | 27 | animations { 28 | enabled = yes 29 | } 30 | 31 | bezier = myBezier, 0.05, 0.9, 0.1, 1.05 32 | 33 | animation = windows, 1, 7, myBezier 34 | animation = windowsOut, 1, 7, default, popin 80% 35 | animation = border, 1, 10, default 36 | animation = borderangle, 1, 8, default 37 | animation = fade, 1, 7, default 38 | animation = workspaces, 1, 6, default 39 | -------------------------------------------------------------------------------- /hyprland/.config/hypr/hyprland.conf: -------------------------------------------------------------------------------- 1 | 2 | # ####################################################################################### 3 | # AUTOGENERATED HYPR CONFIG. 4 | # PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, 5 | # OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. 6 | # ####################################################################################### 7 | 8 | # 9 | # Please note not all available settings / options are set here. 10 | # For a full list, see the wiki 11 | # 12 | 13 | # See https://wiki.hyprland.org/Configuring/Monitors/ 14 | monitor=DP-1,1920x1080@165,0x0,1 15 | 16 | 17 | # See https://wiki.hyprland.org/Configuring/Keywords/ for more 18 | 19 | # Execute your favorite apps at launch 20 | # exec-once = waybar & hyprpaper & firefox 21 | 22 | # Source a file (multi-file configs) 23 | # source = ~/.config/hypr/myColors.conf 24 | 25 | # Set programs that you use 26 | $terminal = st 27 | $fileManager = dolphin 28 | $menu = tofi-drun --drun-launch=true 29 | $mainMod = SUPER 30 | 31 | # Some default env vars. 32 | env = XCURSOR_SIZE,24 33 | env = QT_QPA_PLATFORMTHEME,qt5ct # change to qt6ct if you have that 34 | 35 | # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ 36 | input { 37 | kb_layout = us 38 | kb_variant = 39 | kb_model = 40 | kb_options = 41 | kb_rules = 42 | 43 | follow_mouse = 1 44 | 45 | touchpad { 46 | natural_scroll = no 47 | } 48 | 49 | sensitivity = 0 # -1.0 to 1.0, 0 means no modification. 50 | } 51 | 52 | dwindle { 53 | # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more 54 | pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below 55 | preserve_split = yes # you probably want this 56 | } 57 | 58 | master { 59 | # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more 60 | new_is_master = true 61 | } 62 | 63 | gestures { 64 | # See https://wiki.hyprland.org/Configuring/Variables/ for more 65 | workspace_swipe = off 66 | } 67 | 68 | misc { 69 | # See https://wiki.hyprland.org/Configuring/Variables/ for more 70 | force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers 71 | } 72 | 73 | # Example per-device config 74 | # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more 75 | device { 76 | name = epic-mouse-v1 77 | sensitivity = -0.5 78 | } 79 | 80 | # Example windowrule v1 81 | # windowrule = float, ^(kitty)$ 82 | # Example windowrule v2 83 | # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ 84 | # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more 85 | windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. 86 | 87 | 88 | # Source files 89 | source = ~/.config/hypr/binds.conf 90 | source = ~/.config/hypr/decoration.conf 91 | -------------------------------------------------------------------------------- /hyprland/.config/hypr/plugins/titlebars.conf: -------------------------------------------------------------------------------- 1 | plugin { 2 | hyprbars { 3 | # example config 4 | bar_height = 45 5 | bar_color = rgb(1d2021) 6 | bar_text_font = JetBrainsMono Nerd Font 7 | col.text = rgb(ebdbb2) 8 | 9 | # example buttons (R -> L) 10 | # hyprbars-button = color, size, on-click 11 | # hyprbars-button = rgb(ff4040), 10, 󰖭, hyprctl dispatch killactive 12 | # hyprbars-button = rgb(eeee11), 10, , hyprctl dispatch fullscreen 1 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /kitty/.config/kitty/kitty.conf: -------------------------------------------------------------------------------- 1 | include cat.conf 2 | 3 | font_family JetBrainsMono Nerd Font 4 | 5 | font_size 11 6 | 7 | sync_to_monitor yes 8 | window_padding_width 23 9 | -------------------------------------------------------------------------------- /nvim/.config/nvim/init.lua: -------------------------------------------------------------------------------- 1 | local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" 2 | if not vim.loop.fs_stat(lazypath) then 3 | vim.fn.system({ 4 | "git", 5 | "clone", 6 | "--filter=blob:none", 7 | "https://github.com/folke/lazy.nvim.git", 8 | "--branch=stable", -- latest stable release 9 | lazypath, 10 | }) 11 | end 12 | vim.opt.rtp:prepend(lazypath) 13 | 14 | local opts = {} 15 | 16 | require('vim-opts') 17 | require("lazy").setup("plugins") 18 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lazy-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "LuaSnip": { "branch": "master", "commit": "2dbef19461198630b3d7c39f414d09fb07d1fdd2" }, 3 | "alpha-nvim": { "branch": "main", "commit": "1356b9ef31b985d541d94314f2cf73c61124bf1d" }, 4 | "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, 5 | "friendly-snippets": { "branch": "main", "commit": "b8fae73a479ae0a1c54f5c98fa687ae8a0addc53" }, 6 | "lazy.nvim": { "branch": "main", "commit": "28126922c9b54e35a192ac415788f202c3944c9f" }, 7 | "lualine.nvim": { "branch": "master", "commit": "7d131a8d3ba5016229e8a1d08bf8782acea98852" }, 8 | "mason-lspconfig.nvim": { "branch": "main", "commit": "2b3d247fce06f53934174f5dfe0362c42d65c00c" }, 9 | "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, 10 | "neo-tree.nvim": { "branch": "v3.x", "commit": "e578fe7a5832421b0d2c5b3c0a7a1e40e0f6a47a" }, 11 | "neovim": { "branch": "main", "commit": "9d7474f80afe2f0cfcb4fabfc5451f509d844b85" }, 12 | "nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" }, 13 | "nvim-cmp": { "branch": "main", "commit": "04e0ca376d6abdbfc8b52180f8ea236cbfddf782" }, 14 | "nvim-lspconfig": { "branch": "master", "commit": "9a6279953c82d01b58825a46ede032ab246a5983" }, 15 | "nvim-treesitter": { "branch": "master", "commit": "4fbf150a1621d52f17b099506e1a32f107079210" }, 16 | "nvim-web-devicons": { "branch": "master", "commit": "aaec87dbdaa776bfa0a13c8694bec9bcb7454719" }, 17 | "plenary.nvim": { "branch": "master", "commit": "4f71c0c4a196ceb656c824a70792f3df3ce6bb6d" }, 18 | "telescope.nvim": { "branch": "master", "commit": "7b5c5f56a21e82fdcfe5b250278b8dfc4b1cbab4" } 19 | } -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins.lua: -------------------------------------------------------------------------------- 1 | return { 2 | } 3 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/alpha.lua: -------------------------------------------------------------------------------- 1 | return { 2 | 'goolord/alpha-nvim', 3 | config = function () 4 | local alpha = require("alpha") 5 | local dashboard = require("alpha.themes.dashboard") 6 | 7 | dashboard.section.header.val = { 8 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⣪⣭⣿⣷⣶⣄⠀⠀⠀⠀⠀⠀⠀⠀ ]], 9 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⠤⢤⢔⡾⣹⣿⣿⣿⣿⣿⣿⣷⡄⠀⠀⠀⠀⠀⠀ ]], 10 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠀⢰⢳⣿⣿⣿⠋⣻⣿⣿⣿⣿⣿⣿⣾⣿⠟⠀⠀⠀ ]], 11 | [[ ⠀⠀⠀⠀⠀⢀⠔⠁⠀⠀⠀⢸⣼⣷⣻⣧⣴⣿⣏⣿⣿⣿⣿⣿⣿⣿⣶⣶⣦⠤ ]], 12 | [[ ⠀⠀⠀⠀⢠⠇⠀⠀⠀⠀⠀⠈⢿⣿⣷⣿⣏⡿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠛⠁⠀ ]], 13 | [[ ⠀⠀⠀⢀⠇⠀⠀⠀⠀⠀⠀⠀⠀⠹⢿⣿⣿⣿⣝⣿⣯⣾⠋⣇⠀⠀⠀⠀⠀⠀ ]], 14 | [[ ⠀⠀⢠⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⡄⠀⠀⠙⣽⣝⠋⢡⣯⣀⠘⢦⡀⠀⠀⠀⠀ ]], 15 | [[ ⠀⠀⡷⡁⠀⡄⠀⢠⠻⠀⠀⠀⢸⠙⠀⠀⠀⠙⡇⢹⣧⠛⠂⠀⢤⣉⠢⡀⠀⠀ ]], 16 | [[ ⡠⢊⠚⢇⣰⢣⠀⡞⠒⠣⠀⠀⠘⡄⠘⠓⠲⢆⣳⠀⠀⣠⣄⣀⣀⠙⢯⣾⡄⠀ ]], 17 | [[ ⣇⣇⡌⠈⡜⡌⢳⣧⣤⣄⡑⠄⣀⣳⢀⣠⣤⣴⣾⡆⠀⣿⠖⣠⣮⠀⠀⣿⠇⠀ ]], 18 | [[ ⠈⠛⢇⠀⠿⠷⡘⣿⢙⠿⡏⠀⠈⠉⢻⣻⣿⡏⢹⡟⣢⣿⣟⡻⠋⢀⡴⠁⠀⠀ ]], 19 | [[ ⠀⠀⠈⠢⢤⣀⣋⡿⢮⡉⠁⠀⠀⠀⠈⢉⣙⠷⠛⠺⣿⣙⣛⠭⠝⠋⠀⠀⠀⠀ ]], 20 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⡩⠒⠶⠲⠞⠓⢦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ]], 21 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣵⣕⣉⣫⣿⣦⠀⠱⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ]], 22 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⡾⡿⡟⣻⣿⡏⠱⣮⣿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ]], 23 | [[ ⠀⠀⠀⠀⠀⠀⠀⣰⢿⡛⣿⣾⣜⣾⣿⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀ ]], 24 | [[ ⠀⠀⠀⠀⢀⣴⣿⣾⣿⣿⣿⣿⣿⣿⣾⡏⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀ ]], 25 | [[ ⠀⠀⠀⠀⢀⣵⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⣯⣿⣿⠟⠃⠀⠀⠀⠀⠀⠀ ]], 26 | [[ ⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⣶⣿⣿⣿⣿⣿⣿⣿⣿⠿⠿⠟⠀⠀⠀⠀⠀⠀⠀⠀ ]], 27 | [[ ⠀⠀⠀⠀⠀⠀⠀⠈⠻⠿⠿⣿⣿⣿⣿⣿⣿⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ]], 28 | [[ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣽⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ]], 29 | } 30 | alpha.setup(dashboard.opts) 31 | end, 32 | }; 33 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/completions.lua: -------------------------------------------------------------------------------- 1 | return { 2 | 'hrsh7th/nvim-cmp', 3 | config = function() 4 | local cmp = require'cmp' 5 | require("luasnip.loaders.from_vscode").lazy_load() 6 | 7 | cmp.setup({ 8 | snippet = { 9 | -- REQUIRED - you must specify a snippet engine 10 | expand = function(args) 11 | require('luasnip').lsp_expand(args.body) 12 | end, 13 | }, 14 | window = { 15 | completion = cmp.config.window.bordered(), 16 | -- documentation = cmp.config.window.bordered(), 17 | }, 18 | mapping = cmp.mapping.preset.insert({ 19 | [''] = cmp.mapping.scroll_docs(-4), 20 | [''] = cmp.mapping.scroll_docs(4), 21 | [''] = cmp.mapping.complete(), 22 | [''] = cmp.mapping.abort(), 23 | [''] = cmp.mapping.confirm({ select = true }), 24 | }), 25 | sources = cmp.config.sources({ 26 | -- { name = 'nvim_lsp' }, 27 | -- { name = 'vsnip' }, -- For vsnip users. 28 | { name = 'luasnip' }, -- For luasnip users. 29 | -- { name = 'ultisnips' }, -- For ultisnips users. 30 | -- { name = 'snippy' }, -- For snippy users. 31 | }, { 32 | { name = 'buffer' }, 33 | }) 34 | }) 35 | 36 | end, 37 | } 38 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/lsp-plugins.lua: -------------------------------------------------------------------------------- 1 | return { 2 | { 3 | 'williamboman/mason.nvim', 4 | config = function() 5 | require('mason').setup() 6 | end 7 | }, 8 | { 9 | "williamboman/mason-lspconfig.nvim", 10 | config = function() 11 | require('mason-lspconfig').setup({ 12 | ensure_installed = { "lua_ls" } 13 | }) 14 | end 15 | }, 16 | { 17 | 'neovim/nvim-lspconfig', 18 | config = function() 19 | local lspconfig = require('lspconfig') 20 | lspconfig.lua_ls.setup({}) 21 | end 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/lualine.lua: -------------------------------------------------------------------------------- 1 | return { 2 | "nvim-lualine/lualine.nvim", 3 | config = function() 4 | require('lualine').setup({ 5 | options = { 6 | theme = 'dracula' 7 | } 8 | }) 9 | end 10 | } 11 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/luasnip.lua: -------------------------------------------------------------------------------- 1 | return { 2 | 'L3MON4D3/LuaSnip', 3 | dependencies = { 4 | 'saadparwaiz1/cmp_luasnip', 5 | 'rafamadriz/friendly-snippets' 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/neotree.lua: -------------------------------------------------------------------------------- 1 | return { 2 | { 3 | "nvim-neo-tree/neo-tree.nvim", 4 | branch = "v3.x", 5 | dependencies = { 6 | "nvim-lua/plenary.nvim", 7 | "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended 8 | "MunifTanjim/nui.nvim", 9 | }, 10 | config = function() 11 | vim.keymap.set('n', '', ':Neotree filesystem reveal left', {}) 12 | end 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/rose-pine.lua: -------------------------------------------------------------------------------- 1 | return { 2 | "rose-pine/neovim", as = "rose-pine", 3 | config = function() 4 | vim.cmd.colorscheme "rose-pine" 5 | end 6 | } 7 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/telescope.lua: -------------------------------------------------------------------------------- 1 | return { 2 | 'nvim-telescope/telescope.nvim', tag = '0.1.5', 3 | dependencies = { 'nvim-lua/plenary.nvim' }, 4 | config = function() 5 | local builtin = require('telescope.builtin') 6 | vim.keymap.set('n', '', builtin.find_files, {}) 7 | vim.keymap.set('n', '', builtin.buffers, {}) 8 | vim.keymap.set('n', '', builtin.help_tags, {}) 9 | end 10 | } 11 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/plugins/treesitter.lua: -------------------------------------------------------------------------------- 1 | return { 2 | "nvim-treesitter/nvim-treesitter", 3 | sbuild = ":TSUpdate", 4 | config = function() 5 | local config = require("nvim-treesitter.configs") 6 | config.setup({ 7 | ensure_installed = {"lua", "python", "javascript"}, 8 | highlight = { enable = true }, 9 | indent = { enable = true}, 10 | }) 11 | end 12 | } 13 | -------------------------------------------------------------------------------- /nvim/.config/nvim/lua/vim-opts.lua: -------------------------------------------------------------------------------- 1 | vim.cmd('set termguicolors') 2 | vim.cmd('syntax on') 3 | vim.cmd('set number') 4 | vim.g.mapleader = " " 5 | -------------------------------------------------------------------------------- /picom/.config/picom/picom.conf: -------------------------------------------------------------------------------- 1 | ################################# 2 | # Shadows # 3 | ################################# 4 | 5 | 6 | # Enabled client-side shadows on windows. Note desktop windows 7 | # (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, 8 | # unless explicitly requested using the wintypes option. 9 | # 10 | # shadow = false 11 | shadow = true; 12 | 13 | # The blur radius for shadows, in pixels. (defaults to 12) 14 | # shadow-radius = 12 15 | shadow-radius = 13; 16 | 17 | # The opacity of shadows. (0.0 - 1.0, defaults to 0.75) 18 | # shadow-opacity = .75 19 | 20 | # The left offset for shadows, in pixels. (defaults to -15) 21 | # shadow-offset-x = -15 22 | shadow-offset-x = -7; 23 | 24 | # The top offset for shadows, in pixels. (defaults to -15) 25 | # shadow-offset-y = -15 26 | shadow-offset-y = -7; 27 | 28 | # Red color value of shadow (0.0 - 1.0, defaults to 0). 29 | # shadow-red = 0 30 | 31 | # Green color value of shadow (0.0 - 1.0, defaults to 0). 32 | # shadow-green = 0 33 | 34 | # Blue color value of shadow (0.0 - 1.0, defaults to 0). 35 | # shadow-blue = 0 36 | 37 | # Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue) 38 | # shadow-color = "#000000" 39 | 40 | # Specify a list of conditions of windows that should have no shadow. 41 | # 42 | # examples: 43 | # shadow-exclude = "n:e:Notification"; 44 | # 45 | # shadow-exclude = [] 46 | shadow-exclude = [ 47 | "name = 'Notification'", 48 | "class_g = 'Conky'", 49 | "class_g ?= 'Notify-osd'", 50 | "class_g = 'Cairo-clock'", 51 | "_GTK_FRAME_EXTENTS@:c" 52 | ]; 53 | 54 | # Specify a list of conditions of windows that should have no shadow painted over, such as a dock window. 55 | # clip-shadow-above = [] 56 | 57 | # Specify a X geometry that describes the region in which shadow should not 58 | # be painted in, such as a dock window region. Use 59 | # shadow-exclude-reg = "x10+0+0" 60 | # for example, if the 10 pixels on the bottom of the screen should not have shadows painted on. 61 | # 62 | # shadow-exclude-reg = "" 63 | 64 | # Crop shadow of a window fully on a particular monitor to that monitor. This is 65 | # currently implemented using the X RandR extension. 66 | # crop-shadow-to-monitor = false 67 | 68 | 69 | ################################# 70 | # Fading # 71 | ################################# 72 | 73 | 74 | # Fade windows in/out when opening/closing and when opacity changes, 75 | # unless no-fading-openclose is used. 76 | # fading = false 77 | fading = true; 78 | 79 | # Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028) 80 | # fade-in-step = 0.028 81 | # fade-in-step = 0.03; 82 | 83 | # Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03) 84 | # fade-out-step = 0.03 85 | # fade-out-step = 0.03; 86 | 87 | # The time between steps in fade step, in milliseconds. (> 0, defaults to 10) 88 | fade-delta = 4 89 | 90 | # Specify a list of conditions of windows that should not be faded. 91 | # fade-exclude = [] 92 | 93 | # Do not fade on window open/close. 94 | # no-fading-openclose = false 95 | 96 | # Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc. 97 | # no-fading-destroyed-argb = false 98 | 99 | 100 | ################################# 101 | # Transparency / Opacity # 102 | ################################# 103 | 104 | 105 | # Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0) 106 | # inactive-opacity = 1 107 | # inactive-opacity = 0.8; 108 | 109 | # Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default) 110 | # frame-opacity = 1.0 111 | # frame-opacity = 0.7; 112 | 113 | # Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows. 114 | # inactive-opacity-override = true 115 | # inactive-opacity-override = false; 116 | 117 | # Default opacity for active windows. (0.0 - 1.0, defaults to 1.0) 118 | # active-opacity = 1.0 119 | 120 | # Dim inactive windows. (0.0 - 1.0, defaults to 0.0) 121 | # inactive-dim = 0.0 122 | 123 | # Specify a list of conditions of windows that should never be considered focused. 124 | # focus-exclude = [] 125 | # focus-exclude = [ "class_g = 'Cairo-clock'" ]; 126 | 127 | # Use fixed inactive dim value, instead of adjusting according to window opacity. 128 | # inactive-dim-fixed = 1.0 129 | 130 | # Specify a list of opacity rules, in the format `PERCENT:PATTERN`, 131 | # like `50:name *= "Firefox"`. picom-trans is recommended over this. 132 | # Note we don't make any guarantee about possible conflicts with other 133 | # programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows. 134 | # example: 135 | # opacity-rule = [ "80:class_g = 'URxvt'" ]; 136 | # 137 | # opacity-rule = [] 138 | 139 | 140 | ################################# 141 | # Corners # 142 | ################################# 143 | 144 | # Sets the radius of rounded window corners. When > 0, the compositor will 145 | # round the corners of windows. Does not interact well with 146 | # `transparent-clipping`. 147 | corner-radius = 0 148 | 149 | # Exclude conditions for rounded corners. 150 | rounded-corners-exclude = [ 151 | "window_type = 'dock'", 152 | "window_type = 'desktop'" 153 | ]; 154 | 155 | 156 | ################################# 157 | # Background-Blurring # 158 | ################################# 159 | 160 | 161 | # Parameters for background blurring, see the *BLUR* section for more information. 162 | # blur-method = 163 | # blur-size = 12 164 | # 165 | # blur-deviation = false 166 | # 167 | # blur-strength = 5 168 | 169 | # Blur background of semi-transparent / ARGB windows. 170 | # Bad in performance, with driver-dependent behavior. 171 | # The name of the switch may change without prior notifications. 172 | # 173 | # blur-background = false 174 | 175 | # Blur background of windows when the window frame is not opaque. 176 | # Implies: 177 | # blur-background 178 | # Bad in performance, with driver-dependent behavior. The name may change. 179 | # 180 | # blur-background-frame = false 181 | 182 | 183 | # Use fixed blur strength rather than adjusting according to window opacity. 184 | # blur-background-fixed = false 185 | 186 | 187 | # Specify the blur convolution kernel, with the following format: 188 | # example: 189 | # blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; 190 | # 191 | # blur-kern = "" 192 | # blur-kern = "3x3box"; 193 | 194 | 195 | # Exclude conditions for background blur. 196 | # blur-background-exclude = [] 197 | # blur-background-exclude = [ 198 | # "window_type = 'dock'", 199 | # "window_type = 'desktop'", 200 | # "_GTK_FRAME_EXTENTS@:c" 201 | # ]; 202 | 203 | ################################# 204 | # General Settings # 205 | ################################# 206 | 207 | # Enable remote control via D-Bus. See the man page for more details. 208 | # dbus = true 209 | 210 | # Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers. 211 | # daemon = false 212 | 213 | # Specify the backend to use: `xrender`, `glx`, `egl` or `xr_glx_hybrid`. 214 | # `xrender` is the default one. 215 | # 216 | # backend = "glx" 217 | backend = "xrender"; 218 | 219 | # Use higher precision during rendering, and apply dither when presenting the 220 | # rendered screen. Reduces banding artifacts, but might cause performance 221 | # degradation. Only works with OpenGL. 222 | dithered-present = false; 223 | 224 | # Enable/disable VSync. 225 | # vsync = false 226 | vsync = true; 227 | 228 | # Try to detect WM windows (a non-override-redirect window with no 229 | # child that has 'WM_STATE') and mark them as active. 230 | # 231 | # mark-wmwin-focused = false 232 | mark-wmwin-focused = true; 233 | 234 | # Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused. 235 | # mark-ovredir-focused = false 236 | mark-ovredir-focused = true; 237 | 238 | # Try to detect windows with rounded corners and don't consider them 239 | # shaped windows. The accuracy is not very high, unfortunately. 240 | # 241 | # detect-rounded-corners = false 242 | detect-rounded-corners = true; 243 | 244 | # Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers 245 | # not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows. 246 | # 247 | # detect-client-opacity = false 248 | detect-client-opacity = true; 249 | 250 | # Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window, 251 | # rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy, 252 | # provided that the WM supports it. 253 | # 254 | # use-ewmh-active-win = false 255 | 256 | # Unredirect all windows if a full-screen opaque window is detected, 257 | # to maximize performance for full-screen windows. Known to cause flickering 258 | # when redirecting/unredirecting windows. 259 | # 260 | # unredir-if-possible = false 261 | 262 | # Delay before unredirecting the window, in milliseconds. Defaults to 0. 263 | # unredir-if-possible-delay = 0 264 | 265 | # Conditions of windows that shouldn't be considered full-screen for unredirecting screen. 266 | # unredir-if-possible-exclude = [] 267 | 268 | # Use 'WM_TRANSIENT_FOR' to group windows, and consider windows 269 | # in the same group focused at the same time. 270 | # 271 | # detect-transient = false 272 | detect-transient = true; 273 | 274 | # Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same 275 | # group focused at the same time. This usually means windows from the same application 276 | # will be considered focused or unfocused at the same time. 277 | # 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too. 278 | # 279 | # detect-client-leader = false 280 | 281 | # Resize damaged region by a specific number of pixels. 282 | # A positive value enlarges it while a negative one shrinks it. 283 | # If the value is positive, those additional pixels will not be actually painted 284 | # to screen, only used in blur calculation, and such. (Due to technical limitations, 285 | # with use-damage, those pixels will still be incorrectly painted to screen.) 286 | # Primarily used to fix the line corruption issues of blur, 287 | # in which case you should use the blur radius value here 288 | # (e.g. with a 3x3 kernel, you should use `--resize-damage 1`, 289 | # with a 5x5 one you use `--resize-damage 2`, and so on). 290 | # May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly. 291 | # 292 | # resize-damage = 1 293 | 294 | # Specify a list of conditions of windows that should be painted with inverted color. 295 | # Resource-hogging, and is not well tested. 296 | # 297 | # invert-color-include = [] 298 | 299 | # GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer. 300 | # Might cause incorrect opacity when rendering transparent content (but never 301 | # practically happened) and may not work with blur-background. 302 | # My tests show a 15% performance boost. Recommended. 303 | # 304 | # glx-no-stencil = false 305 | 306 | # GLX backend: Avoid rebinding pixmap on window damage. 307 | # Probably could improve performance on rapid window content changes, 308 | # but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.). 309 | # Recommended if it works. 310 | # 311 | # glx-no-rebind-pixmap = false 312 | 313 | # Disable the use of damage information. 314 | # This cause the whole screen to be redrawn every time, instead of the part of the screen 315 | # has actually changed. Potentially degrades the performance, but might fix some artifacts. 316 | # The opposing option is use-damage 317 | # 318 | # no-use-damage = false 319 | use-damage = true; 320 | 321 | # Use X Sync fence to sync clients' draw calls, to make sure all draw 322 | # calls are finished before picom starts drawing. Needed on nvidia-drivers 323 | # with GLX backend for some users. 324 | # 325 | # xrender-sync-fence = false 326 | 327 | # GLX backend: Use specified GLSL fragment shader for rendering window 328 | # contents. Read the man page for a detailed explanation of the interface. 329 | # 330 | # window-shader-fg = "default" 331 | 332 | # Use rules to set per-window shaders. Syntax is SHADER_PATH:PATTERN, similar 333 | # to opacity-rule. SHADER_PATH can be "default". This overrides window-shader-fg. 334 | # 335 | # window-shader-fg-rule = [ 336 | # "my_shader.frag:window_type != 'dock'" 337 | # ] 338 | 339 | # Force all windows to be painted with blending. Useful if you 340 | # have a glx-fshader-win that could turn opaque pixels transparent. 341 | # 342 | # force-win-blend = false 343 | 344 | # Do not use EWMH to detect fullscreen windows. 345 | # Reverts to checking if a window is fullscreen based only on its size and coordinates. 346 | # 347 | # no-ewmh-fullscreen = false 348 | 349 | # Dimming bright windows so their brightness doesn't exceed this set value. 350 | # Brightness of a window is estimated by averaging all pixels in the window, 351 | # so this could comes with a performance hit. 352 | # Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0) 353 | # 354 | # max-brightness = 1.0 355 | 356 | # Make transparent windows clip other windows like non-transparent windows do, 357 | # instead of blending on top of them. 358 | # 359 | # transparent-clipping = false 360 | 361 | # Specify a list of conditions of windows that should never have transparent 362 | # clipping applied. Useful for screenshot tools, where you need to be able to 363 | # see through transparent parts of the window. 364 | # 365 | # transparent-clipping-exclude = [] 366 | 367 | # Set the log level. Possible values are: 368 | # "trace", "debug", "info", "warn", "error" 369 | # in increasing level of importance. Case doesn't matter. 370 | # If using the "TRACE" log level, it's better to log into a file 371 | # using *--log-file*, since it can generate a huge stream of logs. 372 | # 373 | # log-level = "debug" 374 | log-level = "warn"; 375 | 376 | # Set the log file. 377 | # If *--log-file* is never specified, logs will be written to stderr. 378 | # Otherwise, logs will to written to the given file, though some of the early 379 | # logs might still be written to the stderr. 380 | # When setting this option from the config file, it is recommended to use an absolute path. 381 | # 382 | # log-file = "/path/to/your/log/file" 383 | 384 | # Show all X errors (for debugging) 385 | # show-all-xerrors = false 386 | 387 | # Write process ID to a file. 388 | # write-pid-path = "/path/to/your/log/file" 389 | 390 | # Window type settings 391 | # 392 | # 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard: 393 | # "unknown", "desktop", "dock", "toolbar", "menu", "utility", 394 | # "splash", "dialog", "normal", "dropdown_menu", "popup_menu", 395 | # "tooltip", "notification", "combo", and "dnd". 396 | # 397 | # Following per window-type options are available: :: 398 | # 399 | # fade, shadow::: 400 | # Controls window-type-specific shadow and fade settings. 401 | # 402 | # opacity::: 403 | # Controls default opacity of the window type. 404 | # 405 | # focus::: 406 | # Controls whether the window of this type is to be always considered focused. 407 | # (By default, all window types except "normal" and "dialog" has this on.) 408 | # 409 | # full-shadow::: 410 | # Controls whether shadow is drawn under the parts of the window that you 411 | # normally won't be able to see. Useful when the window has parts of it 412 | # transparent, and you want shadows in those areas. 413 | # 414 | # clip-shadow-above::: 415 | # Controls whether shadows that would have been drawn above the window should 416 | # be clipped. Useful for dock windows that should have no shadow painted on top. 417 | # 418 | # redir-ignore::: 419 | # Controls whether this type of windows should cause screen to become 420 | # redirected again after been unredirected. If you have unredir-if-possible 421 | # set, and doesn't want certain window to cause unnecessary screen redirection, 422 | # you can set this to `true`. 423 | # 424 | wintypes: 425 | { 426 | tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; }; 427 | dock = { shadow = false; clip-shadow-above = true; } 428 | dnd = { shadow = false; } 429 | popup_menu = { opacity = 0.8; } 430 | dropdown_menu = { opacity = 0.8; } 431 | }; 432 | 433 | -------------------------------------------------------------------------------- /polybar/.config/polybar/config.ini: -------------------------------------------------------------------------------- 1 | # _ _ 2 | # | | | | 3 | # _ __ ___ | |_ _| |__ __ _ _ __ 4 | # | '_ \ / _ \| | | | | '_ \ / _` | '__| 5 | # | |_) | (_) | | |_| | |_) | (_| | | 6 | # | .__/ \___/|_|\__, |_.__/ \__,_|_| 7 | # | | __/ | 8 | # |_| |___/ 9 | 10 | 11 | [colors] 12 | background = #272e33 13 | background-alt = #2e383c 14 | foreground = #d3c6aa 15 | primary = #a7c080 16 | secondary = #8ABEB7 17 | alert = #A54242 18 | disabled = #495156 19 | extra = #5e5e5a 20 | extra3 = #6e6a86 21 | 22 | [bar/lmao] 23 | width = 85% 24 | height = 30pt 25 | radius = 0 26 | fixed-center = true 27 | offset-x = 7% 28 | offset-y = 0% 29 | 30 | dpi = 82 31 | 32 | background = ${colors.background} 33 | foreground = ${colors.foreground} 34 | 35 | line-size = 0pt 36 | 37 | border-size = 4pt 38 | border-color = #00000000 39 | 40 | padding-left = 1 41 | padding-right = 1 42 | 43 | module-margin = 1 44 | 45 | separator = 46 | separator-foreground = ${colors.disabled} 47 | 48 | font-0 = sq;2 49 | 50 | modules-left = xworkspaces 51 | modules-center = date 52 | modules-right = pulseaudio tray 53 | 54 | cursor-click = pointer 55 | cursor-scroll = ns-resize 56 | 57 | enable-ipc = true 58 | 59 | tray-position = right 60 | 61 | wm-restack = generic 62 | ; wm-restack = bspwm 63 | ; wm-restack = i3 64 | 65 | ; override-redirect = true 66 | 67 | [module/xworkspaces] 68 | type = internal/xworkspaces 69 | 70 | label-active = %name% 71 | label-active-underline = ${colors.primary} 72 | label-active-padding = 1 73 | label-active-foreground = ${colors.primary} 74 | 75 | label-occupied = %name% 76 | label-occupied-padding = 1 77 | label-occupied-foreground = ${colors.extra3} 78 | 79 | label-urgent = %name% 80 | label-urgent-background = ${colors.alert} 81 | label-urgent-padding = 1 82 | 83 | label-empty = %name% 84 | label-empty-foreground = ${colors.disabled} 85 | label-empty-padding = 1 86 | 87 | [module/xwindow] 88 | type = internal/xwindow 89 | label = %title:0:60:...% 90 | 91 | [module/filesystem] 92 | type = internal/fs 93 | interval = 25 94 | 95 | mount-0 = / 96 | 97 | label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%% 98 | 99 | label-unmounted = %mountpoint% not mounted 100 | label-unmounted-foreground = ${colors.disabled} 101 | 102 | [module/pulseaudio] 103 | type = internal/pulseaudio 104 | 105 | format-volume-prefix = "vol " 106 | format-volume-prefix-foreground = ${colors.primary} 107 | format-volume = 108 | 109 | label-volume = %percentage%% 110 | label-volume-foregound = ${colors.extra} 111 | 112 | label-muted = muted 113 | label-muted-foreground = ${colors.disabled} 114 | 115 | [module/xkeyboard] 116 | type = internal/xkeyboard 117 | blacklist-0 = num lock 118 | 119 | label-layout = %layout% 120 | label-layout-foreground = ${colors.extra2} 121 | 122 | label-indicator-padding = 2 123 | label-indicator-margin = 1 124 | label-indicator-foreground = ${colors.background} 125 | label-indicator-background = ${colors.secondary} 126 | 127 | [module/memory] 128 | type = internal/memory 129 | interval = 2 130 | format-prefix = "ram " 131 | format-prefix-foreground = ${colors.primary} 132 | label = %percentage_used:2%% 133 | 134 | [module/cpu] 135 | type = internal/cpu 136 | interval = 2 137 | format-prefix = "CPU " 138 | format-prefix-foreground = ${colors.primary} 139 | label = %percentage:2%% 140 | 141 | [network-base] 142 | type = internal/network 143 | interval = 5 144 | format-connected = 145 | format-disconnected = 146 | label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected 147 | 148 | [module/wlan] 149 | inherit = network-base 150 | interface-type = wireless 151 | label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip% 152 | 153 | [module/eth] 154 | inherit = network-base 155 | interface-type = wired 156 | label-connected = %{F#F0C674}%ifname%%{F-} %local_ip% 157 | 158 | [module/date] 159 | type = internal/date 160 | interval = 1 161 | 162 | date = %H:%M 163 | date-alt = %Y-%m-%d %H:%M:%S 164 | 165 | label = %date% 166 | 167 | [module/tray] 168 | type = internal/tray 169 | 170 | format-margin = 8px 171 | tray-spacing = 8px 172 | 173 | [settings] 174 | screenchange-reload = true 175 | pseudo-transparency = true 176 | 177 | ; vim:ft=dosini 178 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/adapta.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #222D32FF; 11 | background-alt: #29353BFF; 12 | foreground: #B8C2C6FF; 13 | selected: #00BCD4FF; 14 | active: #21FF90FF; 15 | urgent: #FF4B60FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/arc.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #2F343FFF; 11 | background-alt: #383C4AFF; 12 | foreground: #BAC5D0FF; 13 | selected: #5294E2FF; 14 | active: #98C379FF; 15 | urgent: #E06B74FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/black.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #000000FF; 11 | background-alt: #101010FF; 12 | foreground: #FFFFFFFF; 13 | selected: #62AEEFFF; 14 | active: #98C379FF; 15 | urgent: #E06B74FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/catppuccin.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1E1D2FFF; 11 | background-alt: #282839FF; 12 | foreground: #D9E0EEFF; 13 | selected: #7AA2F7FF; 14 | active: #ABE9B3FF; 15 | urgent: #F28FADFF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/cyberpunk.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #000B1EFF; 11 | background-alt: #0A1528FF; 12 | foreground: #0ABDC6FF; 13 | selected: #0ABDC6FF; 14 | active: #00FF00FF; 15 | urgent: #FF0000FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/dracula.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1E1F29FF; 11 | background-alt: #282A36FF; 12 | foreground: #FFFFFFFF; 13 | selected: #BD93F9FF; 14 | active: #50FA7BFF; 15 | urgent: #FF5555FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/everforest.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #323D43FF; 11 | background-alt: #3C474DFF; 12 | foreground: #DAD1BEFF; 13 | selected: #7FBBB3FF; 14 | active: #A7C080FF; 15 | urgent: #E67E80FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/gruvbox.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #282828FF; 11 | background-alt: #353535FF; 12 | foreground: #EBDBB2FF; 13 | selected: #83A598FF; 14 | active: #B8BB26FF; 15 | urgent: #FB4934FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/lovelace.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1D1F28FF; 11 | background-alt: #282A36FF; 12 | foreground: #FDFDFDFF; 13 | selected: #79E6F3FF; 14 | active: #5ADECDFF; 15 | urgent: #F37F97FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/navy.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #021B21FF; 11 | background-alt: #0C252BFF; 12 | foreground: #F2F1B9FF; 13 | selected: #44B5B1FF; 14 | active: #7CBF9EFF; 15 | urgent: #C2454EFF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/nord.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #2E3440FF; 11 | background-alt: #383E4AFF; 12 | foreground: #E5E9F0FF; 13 | selected: #81A1C1FF; 14 | active: #A3BE8CFF; 15 | urgent: #BF616AFF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/onedark.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1E2127FF; 11 | background-alt: #282B31FF; 12 | foreground: #FFFFFFFF; 13 | selected: #61AFEFFF; 14 | active: #98C379FF; 15 | urgent: #E06C75FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/paper.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #F1F1F1FF; 11 | background-alt: #E0E0E0FF; 12 | foreground: #252525FF; 13 | selected: #008EC4FF; 14 | active: #10A778FF; 15 | urgent: #C30771FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/rose-pine.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * rose-pine color to rofi-themes 3 | * 4 | * color setup 5 | **/ 6 | 7 | * { 8 | background: #191724; 9 | background-alt: #1f1d2e; 10 | foreground: #e0def4; 11 | selected: #31748f; 12 | active: #31748f; 13 | urgent: #eb6f92; 14 | } 15 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/solarized.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #002B36FF; 11 | background-alt: #073642FF; 12 | foreground: #EEE8D5FF; 13 | selected: #268BD2FF; 14 | active: #859900FF; 15 | urgent: #DC322FFF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/tokyonight.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Levi Lacoss (fishyfishfish55) 4 | * Github : @fishyfishfish55 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #15161EFF; 11 | background-alt: #1A1B26FF; 12 | foreground: #C0CAF5FF; 13 | selected: #33467CFF; 14 | active: #414868FF; 15 | urgent: #F7768EFF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/tomorrow.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : yusa 4 | * 5 | * Colors 6 | **/ 7 | 8 | * { 9 | background: #010101; 10 | background-alt: #4c4c4c; 11 | foreground: #eaeaea; 12 | selected: #eaeaea; 13 | active: #4c4c4c; 14 | urgent: #eaeaea; 15 | } 16 | -------------------------------------------------------------------------------- /rofi/.config/rofi/colors/yousai.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #F5E7DEFF; 11 | background-alt: #EBDCD2FF; 12 | foreground: #34302DFF; 13 | selected: #D97742FF; 14 | active: #BF8F60FF; 15 | urgent: #B23636FF; 16 | } 17 | -------------------------------------------------------------------------------- /rofi/.config/rofi/config.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Configuration For Rofi Version: 1.7.3 7 | **/ 8 | 9 | configuration { 10 | /*---------- General setting ----------*/ 11 | modi: "drun,run,filebrowser,window"; 12 | case-sensitive: false; 13 | cycle: true; 14 | filter: ""; 15 | scroll-method: 0; 16 | normalize-match: true; 17 | show-icons: true; 18 | icon-theme: "Papirus"; 19 | /* cache-dir: ;*/ 20 | steal-focus: false; 21 | /* dpi: -1;*/ 22 | 23 | /*---------- Matching setting ----------*/ 24 | matching: "normal"; 25 | tokenize: true; 26 | 27 | /*---------- SSH settings ----------*/ 28 | ssh-client: "ssh"; 29 | ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]"; 30 | parse-hosts: true; 31 | parse-known-hosts: true; 32 | 33 | /*---------- Drun settings ----------*/ 34 | drun-categories: ""; 35 | drun-match-fields: "name,generic,exec,categories,keywords"; 36 | drun-display-format: "{name} [({generic})]"; 37 | drun-show-actions: false; 38 | drun-url-launcher: "xdg-open"; 39 | drun-use-desktop-cache: false; 40 | drun-reload-desktop-cache: false; 41 | drun { 42 | /** Parse user desktop files. */ 43 | parse-user: true; 44 | /** Parse system desktop files. */ 45 | parse-system: true; 46 | } 47 | 48 | /*---------- Run settings ----------*/ 49 | run-command: "{cmd}"; 50 | run-list-command: ""; 51 | run-shell-command: "{terminal} -e {cmd}"; 52 | 53 | /*---------- Fallback Icon ----------*/ 54 | run,drun { 55 | fallback-icon: "application-x-addon"; 56 | } 57 | 58 | /*---------- Window switcher settings ----------*/ 59 | window-match-fields: "title,class,role,name,desktop"; 60 | window-command: "wmctrl -i -R {window}"; 61 | window-format: "{w} - {c} - {t:0}"; 62 | window-thumbnail: false; 63 | 64 | /*---------- Combi settings ----------*/ 65 | /* combi-modi: "window,run";*/ 66 | /* combi-hide-mode-prefix: false;*/ 67 | /* combi-display-format: "{mode} {text}";*/ 68 | 69 | /*---------- History and Sorting ----------*/ 70 | disable-history: false; 71 | sorting-method: "normal"; 72 | max-history-size: 25; 73 | 74 | /*---------- Display setting ----------*/ 75 | display-window: "Windows"; 76 | display-windowcd: "Window CD"; 77 | display-run: "Run"; 78 | display-ssh: "SSH"; 79 | display-drun: "Apps"; 80 | display-combi: "Combi"; 81 | display-keys: "Keys"; 82 | display-filebrowser: "Files"; 83 | 84 | /*---------- Misc setting ----------*/ 85 | terminal: "rofi-sensible-terminal"; 86 | font: "Mono 12"; 87 | sort: false; 88 | threads: 0; 89 | click-to-exit: true; 90 | /* ignored-prefixes: "";*/ 91 | /* pid: "/run/user/1000/rofi.pid";*/ 92 | 93 | /*---------- File browser settings ----------*/ 94 | filebrowser { 95 | /* directory: "/home";*/ 96 | directories-first: true; 97 | sorting-method: "name"; 98 | } 99 | 100 | /*---------- Other settings ----------*/ 101 | timeout { 102 | action: "kb-cancel"; 103 | delay: 0; 104 | } 105 | 106 | /*---------- Keybindings ----------*/ 107 | /* 108 | kb-primary-paste: "Control+V,Shift+Insert"; 109 | kb-secondary-paste: "Control+v,Insert"; 110 | kb-clear-line: "Control+w"; 111 | kb-move-front: "Control+a"; 112 | kb-move-end: "Control+e"; 113 | kb-move-word-back: "Alt+b,Control+Left"; 114 | kb-move-word-forward: "Alt+f,Control+Right"; 115 | kb-move-char-back: "Left,Control+b"; 116 | kb-move-char-forward: "Right,Control+f"; 117 | kb-remove-word-back: "Control+Alt+h,Control+BackSpace"; 118 | kb-remove-word-forward: "Control+Alt+d"; 119 | kb-remove-char-forward: "Delete,Control+d"; 120 | kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h"; 121 | kb-remove-to-eol: "Control+k"; 122 | kb-remove-to-sol: "Control+u"; 123 | kb-accept-entry: "Control+j,Control+m,Return,KP_Enter"; 124 | kb-accept-custom: "Control+Return"; 125 | kb-accept-custom-alt: "Control+Shift+Return"; 126 | kb-accept-alt: "Shift+Return"; 127 | kb-delete-entry: "Shift+Delete"; 128 | kb-mode-next: "Shift+Right,Control+Tab"; 129 | kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab"; 130 | kb-mode-complete: "Control+l"; 131 | kb-row-left: "Control+Page_Up"; 132 | kb-row-right: "Control+Page_Down"; 133 | kb-row-down: "Down,Control+n"; 134 | kb-page-prev: "Page_Up"; 135 | kb-page-next: "Page_Down"; 136 | kb-row-first: "Home,KP_Home"; 137 | kb-row-last: "End,KP_End"; 138 | kb-row-select: "Control+space"; 139 | kb-screenshot: "Alt+S"; 140 | kb-ellipsize: "Alt+period"; 141 | kb-toggle-case-sensitivity: "grave,dead_grave"; 142 | kb-toggle-sort: "Alt+grave"; 143 | kb-cancel: "Escape,Control+g,Control+bracketleft"; 144 | kb-custom-1: "Alt+1"; 145 | kb-custom-2: "Alt+2"; 146 | kb-custom-3: "Alt+3"; 147 | kb-custom-4: "Alt+4"; 148 | kb-custom-5: "Alt+5"; 149 | kb-custom-6: "Alt+6"; 150 | kb-custom-7: "Alt+7"; 151 | kb-custom-8: "Alt+8"; 152 | kb-custom-9: "Alt+9"; 153 | kb-custom-10: "Alt+0"; 154 | kb-custom-11: "Alt+exclam"; 155 | kb-custom-12: "Alt+at"; 156 | kb-custom-13: "Alt+numbersign"; 157 | kb-custom-14: "Alt+dollar"; 158 | kb-custom-15: "Alt+percent"; 159 | kb-custom-16: "Alt+dead_circumflex"; 160 | kb-custom-17: "Alt+ampersand"; 161 | kb-custom-18: "Alt+asterisk"; 162 | kb-custom-19: "Alt+parenleft"; 163 | kb-select-1: "Super+1"; 164 | kb-select-2: "Super+2"; 165 | kb-select-3: "Super+3"; 166 | kb-select-4: "Super+4"; 167 | kb-select-5: "Super+5"; 168 | kb-select-6: "Super+6"; 169 | kb-select-7: "Super+7"; 170 | kb-select-8: "Super+8"; 171 | kb-select-9: "Super+9"; 172 | kb-select-10: "Super+0"; 173 | ml-row-left: "ScrollLeft"; 174 | ml-row-right: "ScrollRight"; 175 | ml-row-up: "ScrollUp"; 176 | ml-row-down: "ScrollDown"; 177 | me-select-entry: "MousePrimary"; 178 | me-accept-entry: "MouseDPrimary"; 179 | me-accept-custom: "Control+MouseDPrimary"; 180 | */ 181 | } 182 | -------------------------------------------------------------------------------- /rofi/.config/rofi/launchers/launcher.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Author : Aditya Shakya (adi1090x) 4 | ## Github : @adi1090x 5 | # 6 | ## Rofi : Launcher (Modi Drun, Run, File Browser, Window) 7 | # 8 | ## Available Styles 9 | # 10 | ## style-1 style-2 style-3 style-4 style-5 11 | ## style-6 style-7 style-8 style-9 style-10 12 | ## style-11 style-12 style-13 style-14 style-15 13 | 14 | dir="$HOME/.config/rofi/launchers" 15 | theme='style' 16 | 17 | ## Run 18 | rofi \ 19 | -show drun \ 20 | -theme ${dir}/${theme}.rasi 21 | -------------------------------------------------------------------------------- /rofi/.config/rofi/launchers/shared/colors.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | * 8 | * Available Colors Schemes 9 | * 10 | * adapta catppuccin everforest navy paper 11 | * arc cyberpunk gruvbox nord solarized 12 | * black dracula lovelace onedark yousai 13 | * 14 | **/ 15 | 16 | /* Import color-scheme from `colors` directory */ 17 | 18 | @import "~/.config/rofi/colors/tomorrow.rasi" 19 | -------------------------------------------------------------------------------- /rofi/.config/rofi/launchers/shared/fonts.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Fonts 7 | * 8 | **/ 9 | 10 | * { 11 | font: "JetBrains Mono Nerd Font 10"; 12 | } 13 | -------------------------------------------------------------------------------- /rofi/.config/rofi/launchers/style.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Rofi Theme File 7 | * Rofi Version: 1.7.3 8 | **/ 9 | 10 | /*****----- Configuration -----*****/ 11 | configuration { 12 | modi: "drun,run"; 13 | show-icons: false; 14 | display-drun: ""; 15 | display-run: ""; 16 | display-filebrowser: ""; 17 | display-window: ""; 18 | drun-display-format: "{name}"; 19 | window-format: "{w} · {c} · {t}"; 20 | } 21 | 22 | /*****----- Global Properties -----*****/ 23 | @import "shared/colors.rasi" 24 | @import "shared/fonts.rasi" 25 | 26 | * { 27 | border-colour: var(selected); 28 | handle-colour: var(foreground); 29 | background-colour: var(background); 30 | foreground-colour: var(foreground); 31 | alternate-background: var(background-alt); 32 | normal-background: var(background); 33 | normal-foreground: var(foreground); 34 | urgent-background: var(urgent); 35 | urgent-foreground: var(background); 36 | active-background: var(active); 37 | active-foreground: var(background); 38 | selected-normal-background: var(selected); 39 | selected-normal-foreground: var(background); 40 | selected-urgent-background: var(active); 41 | selected-urgent-foreground: var(background); 42 | selected-active-background: var(urgent); 43 | selected-active-foreground: var(background); 44 | alternate-normal-background: var(background); 45 | alternate-normal-foreground: var(foreground); 46 | alternate-urgent-background: var(urgent); 47 | alternate-urgent-foreground: var(background); 48 | alternate-active-background: var(active); 49 | alternate-active-foreground: var(background); 50 | } 51 | 52 | /*****----- Main Window -----*****/ 53 | window { 54 | /* properties for window widget */ 55 | transparency: "real"; 56 | location: center; 57 | anchor: center; 58 | fullscreen: false; 59 | width: 400px; 60 | x-offset: 0px; 61 | y-offset: 0px; 62 | 63 | /* properties for all widgets */ 64 | enabled: true; 65 | margin: 0px; 66 | padding: 0px; 67 | border: 0px solid; 68 | border-radius: 8px; 69 | border-color: @border-colour; 70 | cursor: "default"; 71 | /* Backgroud Colors */ 72 | background-color: @background-colour; 73 | /* Backgroud Image */ 74 | //background-image: url("/path/to/image.png", none); 75 | /* Simple Linear Gradient */ 76 | //background-image: linear-gradient(red, orange, pink, purple); 77 | /* Directional Linear Gradient */ 78 | //background-image: linear-gradient(to bottom, pink, yellow, magenta); 79 | /* Angle Linear Gradient */ 80 | //background-image: linear-gradient(45, cyan, purple, indigo); 81 | } 82 | 83 | /*****----- Main Box -----*****/ 84 | mainbox { 85 | enabled: true; 86 | spacing: 10px; 87 | margin: 0px; 88 | padding: 30px; 89 | border: 0px solid; 90 | border-radius: 0px 0px 0px 0px; 91 | border-color: @border-colour; 92 | background-color: transparent; 93 | children: [ "inputbar", "message", "listview", "mode-switcher" ]; 94 | } 95 | 96 | /*****----- Inputbar -----*****/ 97 | inputbar { 98 | enabled: true; 99 | spacing: 10px; 100 | margin: 0px; 101 | padding: 0px; 102 | border: 0px solid; 103 | border-radius: 0px; 104 | border-color: @border-colour; 105 | background-color: transparent; 106 | text-color: @foreground-colour; 107 | children: [ "prompt", "entry" ]; 108 | } 109 | 110 | prompt { 111 | enabled: true; 112 | background-color: inherit; 113 | text-color: inherit; 114 | } 115 | textbox-prompt-colon { 116 | enabled: true; 117 | expand: false; 118 | str: "::"; 119 | background-color: inherit; 120 | text-color: inherit; 121 | } 122 | entry { 123 | enabled: true; 124 | background-color: inherit; 125 | text-color: inherit; 126 | cursor: text; 127 | placeholder: "search..."; 128 | placeholder-color: inherit; 129 | } 130 | num-filtered-rows { 131 | enabled: true; 132 | expand: false; 133 | background-color: inherit; 134 | text-color: inherit; 135 | } 136 | textbox-num-sep { 137 | enabled: true; 138 | expand: false; 139 | str: "/"; 140 | background-color: inherit; 141 | text-color: inherit; 142 | } 143 | num-rows { 144 | enabled: true; 145 | expand: false; 146 | background-color: inherit; 147 | text-color: inherit; 148 | } 149 | case-indicator { 150 | enabled: true; 151 | background-color: inherit; 152 | text-color: inherit; 153 | } 154 | 155 | /*****----- Listview -----*****/ 156 | listview { 157 | enabled: true; 158 | columns: 1; 159 | lines: 6; 160 | cycle: true; 161 | dynamic: true; 162 | scrollbar: false; 163 | layout: vertical; 164 | reverse: false; 165 | fixed-height: true; 166 | fixed-columns: true; 167 | 168 | spacing: 5px; 169 | margin: 0px; 170 | padding: 0px; 171 | border: 0px solid; 172 | border-radius: 0px; 173 | border-color: @border-colour; 174 | background-color: transparent; 175 | text-color: @foreground-colour; 176 | cursor: "default"; 177 | } 178 | scrollbar { 179 | handle-width: 5px ; 180 | handle-color: @handle-colour; 181 | border-radius: 8px; 182 | background-color: @alternate-background; 183 | } 184 | 185 | /*****----- Elements -----*****/ 186 | element { 187 | enabled: true; 188 | spacing: 8px; 189 | margin: 0px; 190 | padding: 8px; 191 | border: 0px solid; 192 | border-radius: 4px; 193 | border-color: @border-colour; 194 | background-color: transparent; 195 | text-color: @foreground-colour; 196 | cursor: pointer; 197 | } 198 | element normal.normal { 199 | background-color: var(normal-background); 200 | text-color: var(normal-foreground); 201 | } 202 | element normal.urgent { 203 | background-color: var(urgent-background); 204 | text-color: var(urgent-foreground); 205 | } 206 | element normal.active { 207 | background-color: var(active-background); 208 | text-color: var(active-foreground); 209 | } 210 | element selected.normal { 211 | background-color: var(normal-foreground); 212 | text-color: var(normal-background); 213 | } 214 | element selected.urgent { 215 | background-color: var(selected-urgent-background); 216 | text-color: var(selected-urgent-foreground); 217 | } 218 | element selected.active { 219 | background-color: var(selected-active-background); 220 | text-color: var(selected-active-foreground); 221 | } 222 | element alternate.normal { 223 | background-color: var(alternate-normal-background); 224 | text-color: var(alternate-normal-foreground); 225 | } 226 | element alternate.urgent { 227 | background-color: var(alternate-urgent-background); 228 | text-color: var(alternate-urgent-foreground); 229 | } 230 | element alternate.active { 231 | background-color: var(alternate-active-background); 232 | text-color: var(alternate-active-foreground); 233 | } 234 | element-icon { 235 | background-color: transparent; 236 | text-color: inherit; 237 | size: 24px; 238 | cursor: inherit; 239 | } 240 | element-text { 241 | background-color: transparent; 242 | text-color: inherit; 243 | highlight: inherit; 244 | cursor: inherit; 245 | vertical-align: 0.5; 246 | horizontal-align: 0.0; 247 | } 248 | 249 | /*****----- Mode Switcher -----*****/ 250 | mode-switcher{ 251 | enabled: true; 252 | spacing: 10px; 253 | margin: 0px; 254 | padding: 0px; 255 | border: 0px solid; 256 | border-radius: 0px; 257 | border-color: @border-colour; 258 | background-color: transparent; 259 | text-color: @foreground-colour; 260 | } 261 | button { 262 | padding: 8px; 263 | border: 0px solid; 264 | border-radius: 4px; 265 | border-color: @border-colour; 266 | background-color: @alternate-background; 267 | text-color: inherit; 268 | cursor: pointer; 269 | } 270 | button selected { 271 | background-color: var(normal-foreground); 272 | text-color: var(normal-background); 273 | } 274 | 275 | /*****----- Message -----*****/ 276 | message { 277 | enabled: true; 278 | margin: 0px; 279 | padding: 0px; 280 | border: 0px solid; 281 | border-radius: 0px 0px 0px 0px; 282 | border-color: @border-colour; 283 | background-color: transparent; 284 | text-color: @foreground-colour; 285 | } 286 | textbox { 287 | padding: 8px; 288 | border: 0px solid; 289 | border-radius: 4px; 290 | border-color: @border-colour; 291 | background-color: @alternate-background; 292 | text-color: @foreground-colour; 293 | vertical-align: 0.5; 294 | horizontal-align: 0.0; 295 | highlight: none; 296 | placeholder-color: @foreground-colour; 297 | blink: true; 298 | markup: true; 299 | } 300 | error-message { 301 | padding: 10px; 302 | border: 0px solid; 303 | border-radius: 4px; 304 | border-color: @border-colour; 305 | background-color: @background-colour; 306 | text-color: @foreground-colour; 307 | } 308 | -------------------------------------------------------------------------------- /rofi/.config/rofi/powermenu/powermenu.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Author : Aditya Shakya (adi1090x) 4 | ## Github : @adi1090x 5 | # 6 | ## Rofi : Power Menu 7 | # 8 | ## Available Styles 9 | # 10 | ## style-1 style-2 style-3 style-4 style-5 11 | ## style-6 style-7 style-8 style-9 style-10 12 | 13 | # Current Theme 14 | dir="$HOME/.config/rofi/powermenu" 15 | theme='style' 16 | 17 | # CMDs 18 | uptime="`uptime -p | sed -e 's/up //g'`" 19 | host=`hostname` 20 | 21 | # Options 22 | shutdown='' 23 | reboot='' 24 | lock='' 25 | suspend='' 26 | logout='' 27 | yes='' 28 | no='' 29 | 30 | # Rofi CMD 31 | rofi_cmd() { 32 | rofi -dmenu \ 33 | -p "Uptime: $uptime" \ 34 | -mesg "Uptime: $uptime" \ 35 | -theme ${dir}/${theme}.rasi 36 | } 37 | 38 | # Confirmation CMD 39 | confirm_cmd() { 40 | rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 350px;}' \ 41 | -theme-str 'mainbox {children: [ "message", "listview" ];}' \ 42 | -theme-str 'listview {columns: 2; lines: 1;}' \ 43 | -theme-str 'element-text {horizontal-align: 0.5;}' \ 44 | -theme-str 'textbox {horizontal-align: 0.5;}' \ 45 | -dmenu \ 46 | -p 'Confirmation' \ 47 | -mesg 'Are you Sure?' \ 48 | -theme ${dir}/${theme}.rasi 49 | } 50 | 51 | # Ask for confirmation 52 | confirm_exit() { 53 | echo -e "$yes\n$no" | confirm_cmd 54 | } 55 | 56 | # Pass variables to rofi dmenu 57 | run_rofi() { 58 | echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd 59 | } 60 | 61 | # Execute Command 62 | run_cmd() { 63 | selected="$(confirm_exit)" 64 | if [[ "$selected" == "$yes" ]]; then 65 | if [[ $1 == '--shutdown' ]]; then 66 | loginctl poweroff 67 | elif [[ $1 == '--reboot' ]]; then 68 | loginctl reboot 69 | elif [[ $1 == '--suspend' ]]; then 70 | mpc -q pause 71 | amixer set Master mute 72 | systemctl suspend 73 | elif [[ $1 == '--logout' ]]; then 74 | if [[ "$DESKTOP_SESSION" == 'openbox' ]]; then 75 | openbox --exit 76 | elif [[ "$DESKTOP_SESSION" == 'bspwm' ]]; then 77 | bspc quit 78 | elif [[ "$DESKTOP_SESSION" == 'i3' ]]; then 79 | i3-msg exit 80 | elif [[ "$DESKTOP_SESSION" == 'plasma' ]]; then 81 | qdbus org.kde.ksmserver /KSMServer logout 0 0 0 82 | fi 83 | fi 84 | else 85 | exit 0 86 | fi 87 | } 88 | 89 | # Actions 90 | chosen="$(run_rofi)" 91 | case ${chosen} in 92 | $shutdown) 93 | run_cmd --shutdown 94 | ;; 95 | $reboot) 96 | run_cmd --reboot 97 | ;; 98 | $lock) 99 | if [[ -x '/usr/bin/betterlockscreen' ]]; then 100 | betterlockscreen -l 101 | elif [[ -x '/usr/bin/i3lock' ]]; then 102 | i3lock 103 | fi 104 | ;; 105 | $suspend) 106 | run_cmd --suspend 107 | ;; 108 | $logout) 109 | run_cmd --logout 110 | ;; 111 | esac 112 | -------------------------------------------------------------------------------- /rofi/.config/rofi/powermenu/shared/colors.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | * 8 | * Available Colors Schemes 9 | * 10 | * adapta catppuccin everforest navy paper 11 | * arc cyberpunk gruvbox nord solarized 12 | * black dracula lovelace onedark yousai 13 | * 14 | **/ 15 | 16 | /* Import color-scheme from `colors` directory */ 17 | 18 | @import "~/.config/rofi/colors/rose-pine.rasi" 19 | -------------------------------------------------------------------------------- /rofi/.config/rofi/powermenu/shared/fonts.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Fonts 7 | * 8 | **/ 9 | 10 | * { 11 | font: "JetBrains Mono Nerd Font 10"; 12 | } 13 | -------------------------------------------------------------------------------- /rofi/.config/rofi/powermenu/style.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Rofi Theme File 7 | * Rofi Version: 1.7.3 8 | **/ 9 | 10 | /*****----- Configuration -----*****/ 11 | configuration { 12 | show-icons: false; 13 | } 14 | 15 | /*****----- Global Properties -----*****/ 16 | @import "shared/colors.rasi" 17 | @import "shared/fonts.rasi" 18 | 19 | /* 20 | USE_BUTTONS=YES 21 | */ 22 | 23 | /*****----- Main Window -----*****/ 24 | window { 25 | /* properties for window widget */ 26 | transparency: "real"; 27 | location: center; 28 | anchor: center; 29 | fullscreen: false; 30 | width: 800px; 31 | x-offset: 0px; 32 | y-offset: 0px; 33 | 34 | /* properties for all widgets */ 35 | enabled: true; 36 | margin: 0px; 37 | padding: 0px; 38 | border: 0px solid; 39 | border-radius: 0px; 40 | border-color: @selected; 41 | cursor: "default"; 42 | background-color: @background; 43 | } 44 | 45 | /*****----- Main Box -----*****/ 46 | mainbox { 47 | enabled: true; 48 | spacing: 15px; 49 | margin: 0px; 50 | padding: 30px; 51 | border: 0px solid; 52 | border-radius: 0px; 53 | border-color: @selected; 54 | background-color: transparent; 55 | children: [ "inputbar", "listview" ]; 56 | } 57 | 58 | /*****----- Inputbar -----*****/ 59 | inputbar { 60 | enabled: true; 61 | spacing: 15px; 62 | margin: 0px; 63 | padding: 0px; 64 | border: 0px; 65 | border-radius: 0px; 66 | border-color: @selected; 67 | background-color: transparent; 68 | text-color: @foreground; 69 | children: [ "textbox-prompt-colon", "prompt"]; 70 | } 71 | 72 | dummy { 73 | background-color: transparent; 74 | } 75 | 76 | textbox-prompt-colon { 77 | enabled: true; 78 | expand: false; 79 | str: ""; 80 | padding: 12px 16px; 81 | border-radius: 0px; 82 | background-color: @urgent; 83 | text-color: @background; 84 | } 85 | prompt { 86 | enabled: true; 87 | padding: 12px; 88 | border-radius: 0px; 89 | background-color: @active; 90 | text-color: @background; 91 | } 92 | 93 | /*****----- Message -----*****/ 94 | message { 95 | enabled: true; 96 | margin: 0px; 97 | padding: 12px; 98 | border: 0px solid; 99 | border-radius: 0px; 100 | border-color: @selected; 101 | background-color: @background-alt; 102 | text-color: @foreground; 103 | } 104 | textbox { 105 | background-color: inherit; 106 | text-color: inherit; 107 | vertical-align: 0.5; 108 | horizontal-align: 0.5; 109 | placeholder-color: @foreground; 110 | blink: true; 111 | markup: true; 112 | } 113 | error-message { 114 | padding: 12px; 115 | border: 0px solid; 116 | border-radius: 0px; 117 | border-color: @selected; 118 | background-color: @background; 119 | text-color: @foreground; 120 | } 121 | 122 | /*****----- Listview -----*****/ 123 | listview { 124 | enabled: true; 125 | columns: 5; 126 | lines: 1; 127 | cycle: true; 128 | dynamic: true; 129 | scrollbar: false; 130 | layout: vertical; 131 | reverse: false; 132 | fixed-height: true; 133 | fixed-columns: true; 134 | 135 | spacing: 15px; 136 | margin: 0px; 137 | padding: 0px; 138 | border: 0px solid; 139 | border-radius: 0px; 140 | border-color: @selected; 141 | background-color: transparent; 142 | text-color: @foreground; 143 | cursor: "default"; 144 | } 145 | 146 | /*****----- Elements -----*****/ 147 | element { 148 | enabled: true; 149 | spacing: 0px; 150 | margin: 0px; 151 | padding: 40px 10px; 152 | border: 0px solid; 153 | border-radius: 0px; 154 | border-color: @selected; 155 | background-color: @background-alt; 156 | text-color: @foreground; 157 | cursor: pointer; 158 | } 159 | element-text { 160 | font: "feather bold 32"; 161 | background-color: transparent; 162 | text-color: inherit; 163 | cursor: inherit; 164 | vertical-align: 0.5; 165 | horizontal-align: 0.5; 166 | } 167 | element selected.normal { 168 | background-color: var(selected); 169 | text-color: var(background); 170 | } 171 | -------------------------------------------------------------------------------- /waybar/.config/waybar/config.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "layer": "top", 3 | "position": "top", 4 | "spacing": 0, 5 | "margin-top": 0, 6 | "margin-left": 10, 7 | "margin-right": 10, 8 | 9 | "modules-left": [ 10 | "hyprland/workspaces" 11 | ], 12 | "modules-center": [ 13 | "clock" 14 | ], 15 | "modules-right": ["pulseaudio", "tray"], 16 | "hyprland/workspaces": { 17 | "all-outputs": true, 18 | "persistent_workspaces": { 19 | "1": [], 20 | "2": [], 21 | "3": [], 22 | "4": [], 23 | "5": [], 24 | }, 25 | "warp-on-scroll": false, 26 | "format": "{icon}", 27 | "format-icons": { 28 | "1": "", 29 | "2": "", 30 | "3": "", 31 | "4": "", 32 | "5": "", 33 | // "urgent": "", 34 | // "active": "", 35 | // "default": "" 36 | } 37 | }, 38 | "keyboard-state": { 39 | "numlock": true, 40 | "capslock": true, 41 | "format": "{name} {icon}", 42 | "format-icons": { 43 | "locked": "", 44 | "unlocked": "" 45 | } 46 | }, 47 | "custom/wlogout": { 48 | "format": "", 49 | "on-click": "wlogout -c 5 -r 5 -p layer-shell", 50 | "interval": "once" 51 | }, 52 | "sway/scratchpad": { 53 | "format": "{icon} {count}", 54 | "show-empty": false, 55 | "format-icons": ["", ""], 56 | "tooltip": true, 57 | "tooltip-format": "{app}: {title}" 58 | }, 59 | "custom/updates": { 60 | "format": "{} {icon}", 61 | "return-type": "json", 62 | "format-icons": { 63 | "has-updates": "󱍷", 64 | "updated": "󰂪" 65 | }, 66 | "exec-if": "which waybar-module-pacman-updates", 67 | "exec": "waybar-module-pacman-updates" 68 | }, 69 | "mpd": { 70 | "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ", 71 | "format-disconnected": "Disconnected ", 72 | "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ", 73 | "unknown-tag": "N/A", 74 | "interval": 2, 75 | "consume-icons": { 76 | "on": " " 77 | }, 78 | "random-icons": { 79 | "off": " ", 80 | "on": " " 81 | }, 82 | "repeat-icons": { 83 | "on": " " 84 | }, 85 | "single-icons": { 86 | "on": "1 " 87 | }, 88 | "state-icons": { 89 | "paused": "", 90 | "playing": "" 91 | }, 92 | "tooltip-format": "MPD (connected)", 93 | "tooltip-format-disconnected": "MPD (disconnected)" 94 | }, 95 | "idle_inhibitor": { 96 | "format": "{icon}", 97 | "format-icons": { 98 | "activated": "", 99 | "deactivated": "" 100 | } 101 | }, 102 | "tray": { 103 | // "icon-size": 21, 104 | "spacing": 10 105 | }, 106 | "clock": { 107 | // "timezone": "America/New_York", 108 | "tooltip-format": "{:%Y %B}\n{calendar}", 109 | "format": "{:%m/%d - %H:%M}", 110 | "format-alt": "{:%Y-%m-%d}", 111 | "format-icons": { 112 | "clock-icon": "" 113 | } 114 | 115 | }, 116 | "cpu": { 117 | "format": "{usage}% ", 118 | "tooltip": false 119 | }, 120 | "custom/separator": { 121 | "format": "", 122 | "tooltip": false 123 | }, 124 | "memory": { 125 | "format": "{}% " 126 | }, 127 | "temperature": { 128 | // "thermal-zone": 2, 129 | // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", 130 | "critical-threshold": 80, 131 | // "format-critical": "{temperatureC}°C {icon}", 132 | "format": "{temperatureC}°C {icon}", 133 | "format-icons": ["", "", ""] 134 | }, 135 | "custom/weather": { 136 | "format": " {}", 137 | "tooltip": false, 138 | "interval": 3600, 139 | "exec": "~/.config/waybar/scripts/weather.sh" 140 | }, 141 | "custom/separator2": { 142 | "format": "|", 143 | "tooltip": false 144 | }, 145 | "battery": { 146 | "states": { 147 | // "good": 95, 148 | "warning": 30, 149 | "critical": 15 150 | }, 151 | "format": "{capacity}% {icon}", 152 | "format-charging": "{capacity}% ", 153 | "format-plugged": "{capacity}% ", 154 | "format-alt": "{time} {icon}", 155 | // "format-good": "", // An empty format will hide the module 156 | // "format-full": "", 157 | "format-icons": ["", "", "", "", ""] 158 | }, 159 | "battery#bat2": { 160 | "bat": "BAT2" 161 | }, 162 | "custom/japan": { 163 | "format": "放っておいて", 164 | "tooltip": "false" 165 | }, 166 | "pulseaudio": { 167 | // "scroll-step": 1, // %, can be a float 168 | "format": "{icon} {volume}%", 169 | "format-bluetooth": "{volume}% {icon} {format_source}", 170 | "format-bluetooth-muted": " {icon} {format_source}", 171 | "format-muted": " {format_source}", 172 | "format-source": "{volume}% ", 173 | "format-source-muted": "", 174 | "format-icons": { 175 | "headphone": "", 176 | "hands-free": "", 177 | "headset": "", 178 | "phone": "", 179 | "portable": "", 180 | "car": "", 181 | "default": ["", "", ""] 182 | }, 183 | "on-click": "pavucontrol" 184 | }, 185 | "custom/media": { 186 | "format": "{icon} {}", 187 | "return-type": "json", 188 | "max-length": 40, 189 | "format-icons": { 190 | "spotify": "", 191 | "default": "🎜" 192 | }, 193 | "escape": true, 194 | "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder 195 | // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name 196 | } 197 | } 198 | 199 | -------------------------------------------------------------------------------- /waybar/.config/waybar/style.css: -------------------------------------------------------------------------------- 1 | * { 2 | /* `otf-font-awesome` is required to be installed for icons */ 3 | font-family: JetBrainsMono Nerd Font, Roboto, Helvetica, Arial, sans-serif; 4 | font-size: 14px; 5 | } 6 | 7 | window#waybar { 8 | background-color: transparent; 9 | color: #eaeaea; 10 | border-radius: 4px; 11 | } 12 | 13 | window#waybar > box { 14 | border-radius: 4px; 15 | margin-right: 10; 16 | margin-left: 10; 17 | margin-bottom: 10; 18 | margin-top: 10; 19 | min-width: 65px; 20 | padding: 0 2px; 21 | background-color: #010101; 22 | } 23 | 24 | window#waybar.hidden { 25 | opacity: 0.2; 26 | } 27 | 28 | /* 29 | window#waybar.empty { 30 | background-color: transparent; 31 | } 32 | window#waybar.solo { 33 | background-color: #FFFFFF; 34 | } 35 | */ 36 | 37 | window#waybar.termite { 38 | background-color: #3F3F3F; 39 | } 40 | 41 | window#waybar.chromium { 42 | background-color: #000000; 43 | border: none; 44 | } 45 | 46 | button { 47 | /* Use box-shadow instead of border so the text isn't offset */ 48 | box-shadow: inset 0 -3px transparent; 49 | /* Avoid rounded borders under each button name */ 50 | border: none; 51 | border-radius: 0; 52 | } 53 | 54 | /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ 55 | button:hover { 56 | background: inherit; 57 | box-shadow: inset 0 -3px #ffffff; 58 | } 59 | 60 | #workspaces button { 61 | padding: 0 5px; 62 | background-color: transparent; 63 | color: #bfbfbf; 64 | } 65 | 66 | #workspaces button:hover { 67 | background: rgba(0, 0, 0, 0.2); 68 | } 69 | 70 | #workspaces button.active { 71 | color: #eaeaea; 72 | } 73 | 74 | #workspaces button.urgent { 75 | background-color: #eb4d4b; 76 | } 77 | 78 | #mode { 79 | background-color: #64727D; 80 | border-bottom: 3px solid #ffffff; 81 | } 82 | 83 | #clock { 84 | background-color: #010101; 85 | color: #eaeaea; 86 | } 87 | #battery, 88 | #cpu, 89 | #memory, 90 | #disk, 91 | #temperature, 92 | #backlight, 93 | #network, 94 | #pulseaudio, 95 | #wireplumber, 96 | #custom-media, 97 | #tray, 98 | #mode, 99 | #idle_inhibitor, 100 | #scratchpad, 101 | #mpd, #custom-japan { 102 | color: #ffffff; 103 | border-radius: 8px; 104 | margin: 5px 4px; 105 | padding: 2px 2px; 106 | margin-right: 6px; 107 | background-color: #1e1e2e; 108 | } 109 | 110 | #window { 111 | background-color: #1e1e2e; 112 | padding: 0 10px; 113 | border-radius: 4px; 114 | } 115 | 116 | #workspaces { 117 | } 118 | 119 | /* If workspaces is the leftmost module, omit left margin */ 120 | .modules-left > widget:first-child > #temperature { 121 | margin-left: 21; 122 | } 123 | 124 | .modules-left- > widget:first-child > #workspaces button.active { 125 | margin-left: 3; 126 | } 127 | 128 | /* If workspaces is the rightmost module, omit right margin */ 129 | .modules-right > widget:last-child > #workspaces { 130 | margin-right: 3; 131 | } 132 | 133 | #battery { 134 | background-color: #ffffff; 135 | color: #000000; 136 | } 137 | 138 | #custom-wlogout { 139 | color: #74c7ec; 140 | margin-right: 12px; 141 | margin-left: 12px; 142 | border-radius: 4px; 143 | } 144 | 145 | #pulseaudio { 146 | color: #eaeaea; 147 | background-color: #010101; 148 | } 149 | 150 | #clock { 151 | color: #eaeaea; 152 | } 153 | 154 | #custom-japan { 155 | color: #cba6f7; 156 | } 157 | 158 | #battery.charging, #battery.plugged { 159 | color: #ffffff; 160 | background-color: #26A65B; 161 | } 162 | 163 | @keyframes blink { 164 | to { 165 | background-color: #ffffff; 166 | color: #000000; 167 | } 168 | } 169 | 170 | #battery.critical:not(.charging) { 171 | background-color: #f53c3c; 172 | color: #ffffff; 173 | animation-name: blink; 174 | animation-duration: 0.5s; 175 | animation-timing-function: linear; 176 | animation-iteration-count: infinite; 177 | animation-direction: alternate; 178 | } 179 | 180 | label:focus { 181 | background-color: #000000; 182 | } 183 | 184 | #custom-separator { 185 | color: #FFFFFF; 186 | margin-left: 16px; 187 | } 188 | 189 | #custom-separator2 { 190 | color: #FFFFFF; 191 | } 192 | 193 | #custom-weather { 194 | color: #a6e3a1; 195 | } 196 | 197 | #cpu { 198 | background-color: #2ecc71; 199 | color: #000000; 200 | } 201 | 202 | #memory { 203 | background-color: #9b59b6; 204 | } 205 | 206 | #disk { 207 | background-color: #964B00; 208 | } 209 | 210 | #backlight { 211 | background-color: #90b1b1; 212 | } 213 | 214 | #network { 215 | background-color: #2980b9; 216 | } 217 | 218 | #network.disconnected { 219 | background-color: #f53c3c; 220 | } 221 | 222 | #pulseaudio.muted { 223 | color: #2a5c45; 224 | } 225 | 226 | #wireplumber { 227 | background-color: #fff0f5; 228 | color: #000000; 229 | } 230 | 231 | #wireplumber.muted { 232 | background-color: #f53c3c; 233 | } 234 | 235 | #custom-media { 236 | background-color: #66cc99; 237 | color: #2a5c45; 238 | min-width: 100px; 239 | } 240 | 241 | #custom-media.custom-spotify { 242 | background-color: #66cc99; 243 | } 244 | 245 | #custom-media.custom-vlc { 246 | background-color: #ffa000; 247 | } 248 | 249 | #temperature { 250 | color: #f9e2af; 251 | } 252 | 253 | #temperature.critical { 254 | background-color: #eb4d4b; 255 | } 256 | 257 | #tray { 258 | background-color: #1e1e2e; 259 | } 260 | 261 | #tray > .passive { 262 | -gtk-icon-effect: dim; 263 | } 264 | 265 | #tray > .needs-attention { 266 | -gtk-icon-effect: highlight; 267 | background-color: #eb4d4b; 268 | } 269 | 270 | #idle_inhibitor { 271 | background-color: #2d3436; 272 | } 273 | 274 | #idle_inhibitor.activated { 275 | background-color: #ecf0f1; 276 | color: #2d3436; 277 | } 278 | 279 | #mpd { 280 | background-color: #66cc99; 281 | color: #2a5c45; 282 | } 283 | 284 | #mpd.disconnected { 285 | background-color: #f53c3c; 286 | } 287 | 288 | #mpd.stopped { 289 | background-color: #90b1b1; 290 | } 291 | 292 | #mpd.paused { 293 | background-color: #51a37a; 294 | } 295 | 296 | #language { 297 | background: #00b093; 298 | color: #740864; 299 | padding: 0 5px; 300 | margin: 0 5px; 301 | min-width: 16px; 302 | } 303 | 304 | #keyboard-state { 305 | background: #97e1ad; 306 | color: #000000; 307 | padding: 0 0px; 308 | margin: 0 5px; 309 | min-width: 16px; 310 | } 311 | 312 | #keyboard-state > label { 313 | padding: 0 5px; 314 | } 315 | 316 | #keyboard-state > label.locked { 317 | background: rgba(0, 0, 0, 0.2); 318 | } 319 | 320 | #scratchpad { 321 | background: rgba(0, 0, 0, 0.2); 322 | } 323 | 324 | #scratchpad.empty { 325 | background-color: transparent; 326 | } 327 | 328 | #privacy { 329 | padding: 0; 330 | } 331 | 332 | #privacy-item { 333 | padding: 0 5px; 334 | color: white; 335 | } 336 | 337 | #privacy-item.screenshare { 338 | background-color: #cf5700; 339 | } 340 | 341 | #privacy-item.audio-in { 342 | background-color: #1ca000; 343 | } 344 | 345 | #privacy-item.audio-out { 346 | background-color: #0069d4; 347 | } 348 | --------------------------------------------------------------------------------