├── README.md ├── Wallpapers └── wall.jpg ├── aur_packages.txt ├── base_packages.txt ├── copy_files.sh ├── dotfiles ├── .cache │ ├── wal-telegram │ │ └── wal.tdesktop-theme │ └── wal │ │ ├── QARSlp.rasi │ │ ├── colors │ │ ├── colors-kitty.conf │ │ ├── colors-konsole.colorscheme │ │ ├── colors-oomox │ │ ├── colors-putty.reg │ │ ├── colors-rofi-dark.rasi │ │ ├── colors-rofi-light.rasi │ │ ├── colors-speedcrunch.json │ │ ├── colors-sway │ │ ├── colors-tty.sh │ │ ├── colors-wal-dmenu.h │ │ ├── colors-wal-dwm.h │ │ ├── colors-wal-st.h │ │ ├── colors-wal-tabbed.h │ │ ├── colors-wal.vim │ │ ├── colors-waybar.css │ │ ├── colors.Xresources │ │ ├── colors.css │ │ ├── colors.hs │ │ ├── colors.json │ │ ├── colors.scss │ │ ├── colors.sh │ │ ├── colors.yml │ │ ├── config │ │ ├── dunstrc │ │ ├── flameshot.ini │ │ ├── schemes │ │ ├── _usr_local_backgrounds_background_png_dark_colorthief_None_1.1.0.json │ │ ├── _usr_local_backgrounds_background_png_dark_wal_None_1.1.0.json │ │ ├── _usr_local_backgrounds_background_png_light_colorthief_None_1.1.0.json │ │ └── _usr_local_backgrounds_background_png_light_wal_None_1.1.0.json │ │ ├── sequences │ │ └── wal ├── .config │ ├── alacritty │ │ └── alacritty.yml │ ├── cava │ │ └── config │ ├── dunst │ │ └── dunstrc │ ├── flameshot │ │ └── flameshot.ini │ ├── gromit-mpx.ini │ ├── ncspot │ │ └── config.toml │ ├── nvim │ │ └── init.vim │ ├── picom │ │ └── picom.conf │ ├── qtile │ │ ├── __pycache__ │ │ │ └── functions.cpython-311.pyc │ │ ├── config.py │ │ ├── functions.py │ │ ├── keys.py │ │ ├── test.py │ │ ├── theme.py │ │ ├── themes │ │ │ ├── dark │ │ │ │ ├── Helgen.py │ │ │ │ ├── Informative.py │ │ │ │ ├── Media.py │ │ │ │ ├── Miasma.py │ │ │ │ ├── Minimal.py │ │ │ │ ├── Monochrome.py │ │ │ │ ├── Nice.py │ │ │ │ ├── Slash.py │ │ │ │ ├── Spectrum.py │ │ │ │ └── no_bar.py │ │ │ └── light │ │ │ │ ├── Miasma.py │ │ │ │ ├── Minimal.py │ │ │ │ ├── Monochrome.py │ │ │ │ ├── Nice.py │ │ │ │ ├── Slash.py │ │ │ │ ├── Spectrum.py │ │ │ │ └── no_bar.py │ │ ├── update │ │ └── variables │ ├── ranger │ │ └── rc.conf │ └── rofi │ │ ├── QARSlp.rasi │ │ ├── bluetooth.rasi │ │ ├── calculator.rasi │ │ ├── emojis.rasi │ │ ├── launcher.rasi │ │ ├── left.rasi │ │ ├── network.rasi │ │ ├── network2.rasi │ │ ├── sel_wal.rasi │ │ └── shortcuts.rasi ├── .fonts │ ├── FiraCode-Bold.ttf │ ├── FiraCode-Light.ttf │ ├── FiraCode-Medium.ttf │ ├── FiraCode-Regular.ttf │ ├── FiraCode-Retina.ttf │ ├── Font Awesome 6 Brands-Regular-400.otf │ ├── Font Awesome 6 Duotone-Solid-900.otf │ ├── Font Awesome 6 Pro-Light-300.otf │ ├── Font Awesome 6 Pro-Regular-400.otf │ ├── Font Awesome 6 Pro-Solid-900.otf │ ├── Font Awesome 6 Pro-Thin-100.otf │ └── Unknown Galaxy.ttf ├── .local │ └── bin │ │ ├── alwaystart │ │ ├── autostart │ │ ├── bluet │ │ ├── calculator │ │ ├── calendar │ │ ├── change_display │ │ ├── cleansys │ │ ├── genwal │ │ ├── notesfi │ │ ├── recorder │ │ ├── selectwal │ │ ├── updater │ │ └── wifi2 ├── .oh-my-zsh │ └── themes │ │ ├── agnoster.zsh-theme │ │ ├── avit.zsh-theme │ │ └── passion.zsh-theme ├── .shortcuts ├── .taskrc └── .zshrc ├── install.sh ├── installer.sh ├── lightdm ├── lightdm-gtk-greeter.conf └── lightdm.conf ├── logid.cfg ├── pip.txt ├── pulse └── system.pa ├── samba └── smb.conf ├── screenshots ├── 4k.png ├── Backend1.png ├── Backend2.png ├── Color_picker1.png ├── Color_picker2.png ├── Colorthief2.png ├── Colorthierf1.png ├── Colorz1.png ├── Colorz2.png ├── Haishoku1.png ├── Haishoku2.png ├── Launcher.png ├── Lightdm1.png ├── Lightdm2.png ├── Lightdm3.png ├── Multi_monitor.png ├── Night_light.png ├── QARSlp1.png ├── QARSlp2.png ├── QARSlp3.png ├── Random_Wall.png ├── Screenshot.png ├── Session.png ├── Shortcuts.png ├── Slash1.png ├── Slash2.png ├── Theme.png ├── Wal1.png ├── Wal2.png ├── Wifi.png ├── bars.gif ├── bckends.gif ├── calendar.png ├── calendar1.png ├── calendar2.png ├── circles.png ├── color_picker.gif ├── control-panel.gif ├── control-panel.mp4 ├── custom.png ├── dot-circles.png ├── ethernet-ip.png ├── ethernet.png ├── hd.png ├── kanji.png ├── launcher.gif ├── lightdm.gif ├── low.png ├── nightlight.gif ├── notifications.gif ├── numbers.png ├── patreon.svg ├── random-wallpaper.gif ├── randwall.gif ├── screenshot.gif ├── screenshot.mp4 ├── select_wal.gif ├── session-menu.gif ├── shortcuts.gif ├── themes.gif ├── wifi-ip.png └── wifi.png └── update.sh /Wallpapers/wall.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/Wallpapers/wall.jpg -------------------------------------------------------------------------------- /aur_packages.txt: -------------------------------------------------------------------------------- 1 | qtile-git 2 | farge 3 | qtile-extras-git 4 | wpgtk-git 5 | cava 6 | picom-pijulius-git 7 | rofi-emoji -------------------------------------------------------------------------------- /base_packages.txt: -------------------------------------------------------------------------------- 1 | feh 2 | base-devel 3 | alsa-utils 4 | pulseaudio-alsa 5 | alacritty 6 | xcolor 7 | playerctl 8 | scrot 9 | flameshot 10 | rofi 11 | python-pip 12 | lxappearance 13 | bmon 14 | acpilight 15 | lm_sensors 16 | nm-connection-editor 17 | arandr 18 | python-psutil 19 | python-xdg 20 | python-iwlib 21 | python-dateutil 22 | ueberzug 23 | xsettingsd 24 | dunst 25 | tk 26 | lightdm-gtk-greeter-settings 27 | bc 28 | xorg-xkill 29 | xdg-user-dirs 30 | networkmanager 31 | libayatana-appindicator 32 | tumbler 33 | redshift 34 | xorg-xdpyinfo 35 | pamixer 36 | xclip 37 | xdotool 38 | -------------------------------------------------------------------------------- /copy_files.sh: -------------------------------------------------------------------------------- 1 | function copy_dotfiles(){ 2 | mkdir -p ~/.config/alacritty 3 | cp ~/QARSlp/dotfiles/.config/alacritty/alacritty.yml ~/.config/alacritty/alacritty.yml 4 | cp ~/QARSlp/dotfiles/.shortcuts ~/ 5 | mkdir -p ~/.config/wal/templates 6 | mkdir -p ~/.config/dunst 7 | cp ~/QARSlp/dotfiles/.config/dunst/dunstrc ~/.config/wal/templates 8 | cp ~/QARSlp/dotfiles/.config/rofi/QARSlp.rasi ~/.config/wal/templates 9 | mkdir -p ~/.config/cava 10 | cp ~/QARSlp/dotfiles/.config/cava/config ~/.config/wal/templates 11 | mkdir -p ~/.fonts 12 | cp ~/QARSlp/dotfiles/.fonts/* ~/.fonts 13 | fc-cache -f -v 14 | mkdir -p ~/.config/picom 15 | cp ~/QARSlp/dotfiles/.config/picom/picom.conf ~/.config/picom/picom.conf 16 | mkdir -p ~/.config/qtile 17 | cp ~/QARSlp/dotfiles/.config/qtile/themes/default.py ~/.config/qtile/theme.py 18 | cp -r ~/QARSlp/dotfiles/.config/qtile/* ~/.config/qtile/ 19 | mkdir -p ~/.config/ranger 20 | cp ~/QARSlp/dotfiles/.config/ranger/rc.conf ~/.config/ranger/rc.conf 21 | mkdir -p ~/.config/rofi 22 | cp -r ~/QARSlp/dotfiles/.config/rofi/* ~/.config/rofi/ 23 | sudo mkdir -p /root/.config/rofi 24 | sudo cp -r ~/QARSlp/dotfiles/.config/rofi/* /root/.config/rofi/ 25 | sudo mkdir -p /root/.cache/wal 26 | sudo cp -r ~/.cache/wal/colors-rofi-dark.rasi /root/.cache/wal/ 27 | xdg-settings set default-web-browser firefox.desktop 28 | mkdir -p ~/.local/bin 29 | cp -r ~/QARSlp/dotfiles/.local/bin/* ~/.local/bin 30 | chmod +x ~/.local/bin/* 31 | cp ~/QARSlp/dotfiles/.zshrc ~/ 32 | mkdir -p ~/.oh-my-zsh 33 | cp ~/QARSlp/dotfiles/.oh-my-zsh/themes/* ~/.oh-my-zsh/themes/ 34 | mkdir ~/Pictures 35 | sudo mkdir -p /usr/share/backgrounds 36 | mkdir -p ~/Pictures/Wallpapers 37 | cp -r ~/QARSlp/Wallpapers/* ~/Pictures/Wallpapers 38 | sudo cp ~/QARSlp/Wallpapers/wall.jpg /usr/local/backgrounds/background.png 39 | sudo mkdir -p /usr/local/themes 40 | sudo cp -r ~/.local/share/themes/FlatColor /usr/local/themes 41 | sudo chown $USER:$USER /usr/local/themes/FlatColor 42 | sudo ln -s /usr/local/themes/FlatColor /usr/share/themes/FlatColor 43 | sudo mkdir /usr/local/backgrounds 44 | sudo chown $USER:$USER /usr/local/backgrounds 45 | sudo cp ~/QARSlp/lightdm-gtk-greeter.conf /etc/lightdm/lightdm-gtk-greeter.conf 46 | } 47 | 48 | copy_dotfiles -------------------------------------------------------------------------------- /dotfiles/.cache/wal-telegram/wal.tdesktop-theme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.cache/wal-telegram/wal.tdesktop-theme -------------------------------------------------------------------------------- /dotfiles/.cache/wal/QARSlp.rasi: -------------------------------------------------------------------------------- 1 | * { 2 | color1: #2A5F66; 3 | color2: #526261; 4 | color3: #A17647; 5 | color4: #3C926A; 6 | color5: #38708E; 7 | color6: #23BCB7; 8 | color7: #a7c3c6; 9 | color8: #74888a; 10 | active: #526261; 11 | urgent: #ffcc00; 12 | active-background: #526261; 13 | active-foreground: #23BCB7; 14 | normal-background: @background; 15 | normal-foreground: @foreground; 16 | urgent-background: #2A5F66; 17 | urgent-foreground: @foreground; 18 | 19 | alternate-active-background: #3C926A; 20 | alternate-active-foreground: #38708E; 21 | alternate-normal-background: @background; 22 | alternate-normal-foreground: @foreground; 23 | alternate-urgent-background: @background; 24 | alternate-urgent-foreground: @foreground; 25 | 26 | selected-active-background: #2A5F66; 27 | selected-active-foreground: @foreground; 28 | selected-normal-background: #526261; 29 | selected-normal-foreground: @foreground; 30 | selected-urgent-background: #A17647; 31 | selected-urgent-foreground: @foreground; 32 | 33 | background-color: @background; 34 | background: #171213; 35 | background-alt: #171213; 36 | foreground: #a7c3c6; 37 | border-color: @background; 38 | spacing: 2; 39 | } 40 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors: -------------------------------------------------------------------------------- 1 | #171213 2 | #2A5F66 3 | #526261 4 | #A17647 5 | #3C926A 6 | #38708E 7 | #23BCB7 8 | #a7c3c6 9 | #74888a 10 | #2A5F66 11 | #526261 12 | #A17647 13 | #3C926A 14 | #38708E 15 | #23BCB7 16 | #a7c3c6 17 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-kitty.conf: -------------------------------------------------------------------------------- 1 | foreground #a7c3c6 2 | background #171213 3 | cursor #a7c3c6 4 | 5 | color0 #171213 6 | color8 #74888a 7 | color1 #2A5F66 8 | color9 #2A5F66 9 | color2 #526261 10 | color10 #526261 11 | color3 #A17647 12 | color11 #A17647 13 | color4 #3C926A 14 | color12 #3C926A 15 | color5 #38708E 16 | color13 #38708E 17 | color6 #23BCB7 18 | color14 #23BCB7 19 | color7 #a7c3c6 20 | color15 #a7c3c6 21 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-konsole.colorscheme: -------------------------------------------------------------------------------- 1 | [Background] 2 | Color=23,18,19 3 | 4 | [BackgroundIntense] 5 | Color=23,18,19 6 | 7 | [Color0] 8 | Color=23,18,19 9 | 10 | [Color0Intense] 11 | Color=116,136,138 12 | 13 | [Color1] 14 | Color=42,95,102 15 | 16 | [Color1Intense] 17 | Color=42,95,102 18 | 19 | [Color2] 20 | Color=82,98,97 21 | 22 | [Color2Intense] 23 | Color=82,98,97 24 | 25 | [Color3] 26 | Color=161,118,71 27 | 28 | [Color3Intense] 29 | Color=161,118,71 30 | 31 | [Color4] 32 | Color=60,146,106 33 | 34 | [Color4Intense] 35 | Color=60,146,106 36 | 37 | [Color5] 38 | Color=56,112,142 39 | 40 | [Color5Intense] 41 | Color=56,112,142 42 | 43 | [Color6] 44 | Color=35,188,183 45 | 46 | [Color6Intense] 47 | Color=35,188,183 48 | 49 | [Color7] 50 | Color=167,195,198 51 | 52 | [Color7Intense] 53 | Color=167,195,198 54 | 55 | [Foreground] 56 | Color=167,195,198 57 | 58 | [ForegroundIntense] 59 | Color=167,195,198 60 | 61 | [General] 62 | Description=Colorscheme generated by wal 63 | Opacity=1 64 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-oomox: -------------------------------------------------------------------------------- 1 | NAME=wal 2 | BG=171213 3 | FG=a7c3c6 4 | MENU_BG=171213 5 | MENU_FG=a7c3c6 6 | SEL_BG=2A5F66 7 | SEL_FG=171213 8 | TXT_BG=171213 9 | TXT_FG=a7c3c6 10 | BTN_BG=526261 11 | BTN_FG=a7c3c6 12 | HDR_BTN_BG=A17647 13 | HDR_BTN_FG=a7c3c6 14 | GTK3_GENERATE_DARK=True 15 | ROUNDNESS=0 16 | SPACING=3 17 | GRADIENT=0.0 18 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-putty.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\wal] 4 | "Colour0"="167,195,198" ; Default Foreground 5 | "Colour1"="167,195,198" ; Default Bold Foreground 6 | "Colour2"="23,18,19" ; Default Background 7 | "Colour3"="23,18,19" ; Default Bold Background 8 | "Colour4"="23,18,19" ; Cursor Text 9 | "Colour5"="167,195,198" ; Cursor Color 10 | "Colour6"="23,18,19" ; ANSI Black 11 | "Colour7"="116,136,138" ; ANSI Black Bold 12 | "Colour8"="42,95,102" ; ANSI Red 13 | "Colour9"="42,95,102" ; ANSI Red Bold 14 | "Colour10"="82,98,97" ; ANSI Green 15 | "Colour11"="82,98,97" ; ANSI Green Bold 16 | "Colour12"="161,118,71" ; ANSI Yellow 17 | "Colour13"="161,118,71" ; ANSI Yellow Bold 18 | "Colour14"="60,146,106" ; ANSI Blue 19 | "Colour15"="60,146,106" ; ANSI Blue Bold 20 | "Colour16"="56,112,142" ; ANSI Magenta 21 | "Colour17"="56,112,142" ; ANSI Magenta Bold 22 | "Colour18"="35,188,183" ; ANSI Cyan 23 | "Colour19"="35,188,183" ; ANSI Cyan Bold 24 | "Colour20"="167,195,198" ; ANSI White 25 | "Colour21"="167,195,198" ; ANSI White Bold 26 | 27 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-rofi-dark.rasi: -------------------------------------------------------------------------------- 1 | * { 2 | active-background: #526261; 3 | active-foreground: @foreground; 4 | normal-background: @background; 5 | normal-foreground: @foreground; 6 | urgent-background: #2A5F66; 7 | urgent-foreground: @foreground; 8 | 9 | alternate-active-background: @background; 10 | alternate-active-foreground: @foreground; 11 | alternate-normal-background: @background; 12 | alternate-normal-foreground: @foreground; 13 | alternate-urgent-background: @background; 14 | alternate-urgent-foreground: @foreground; 15 | 16 | selected-active-background: #2A5F66; 17 | selected-active-foreground: @foreground; 18 | selected-normal-background: #526261; 19 | selected-normal-foreground: @foreground; 20 | selected-urgent-background: #A17647; 21 | selected-urgent-foreground: @foreground; 22 | 23 | background-color: @background; 24 | background: #171213; 25 | foreground: #a7c3c6; 26 | border-color: @background; 27 | spacing: 2; 28 | } 29 | 30 | #window { 31 | background-color: @background; 32 | border: 0; 33 | padding: 2.5ch; 34 | } 35 | 36 | #mainbox { 37 | border: 0; 38 | padding: 0; 39 | } 40 | 41 | #message { 42 | border: 2px 0px 0px; 43 | border-color: @border-color; 44 | padding: 1px; 45 | } 46 | 47 | #textbox { 48 | text-color: @foreground; 49 | } 50 | 51 | #inputbar { 52 | children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; 53 | } 54 | 55 | #textbox-prompt-colon { 56 | expand: false; 57 | str: ":"; 58 | margin: 0px 0.3em 0em 0em; 59 | text-color: @normal-foreground; 60 | } 61 | 62 | #listview { 63 | fixed-height: 0; 64 | border: 2px 0px 0px; 65 | border-color: @border-color; 66 | spacing: 2px; 67 | scrollbar: true; 68 | padding: 2px 0px 0px; 69 | } 70 | 71 | #element { 72 | border: 0; 73 | padding: 1px; 74 | } 75 | 76 | #element.normal.normal { 77 | background-color: @normal-background; 78 | text-color: @normal-foreground; 79 | } 80 | 81 | #element.normal.urgent { 82 | background-color: @urgent-background; 83 | text-color: @urgent-foreground; 84 | } 85 | 86 | #element.normal.active { 87 | background-color: @active-background; 88 | text-color: @active-foreground; 89 | } 90 | 91 | #element.selected.normal { 92 | background-color: @selected-normal-background; 93 | text-color: @selected-normal-foreground; 94 | } 95 | 96 | #element.selected.urgent { 97 | background-color: @selected-urgent-background; 98 | text-color: @selected-urgent-foreground; 99 | } 100 | 101 | #element.selected.active { 102 | background-color: @selected-active-background; 103 | text-color: @selected-active-foreground; 104 | } 105 | 106 | #element.alternate.normal { 107 | background-color: @alternate-normal-background; 108 | text-color: @alternate-normal-foreground; 109 | } 110 | 111 | #element.alternate.urgent { 112 | background-color: @alternate-urgent-background; 113 | text-color: @alternate-urgent-foreground; 114 | } 115 | 116 | #element.alternate.active { 117 | background-color: @alternate-active-background; 118 | text-color: @alternate-active-foreground; 119 | } 120 | 121 | #scrollbar { 122 | width: 4px; 123 | border: 0; 124 | handle-width: 8px; 125 | padding: 0; 126 | } 127 | 128 | #sidebar { 129 | border: 2px 0px 0px; 130 | border-color: @border-color; 131 | } 132 | 133 | #button { 134 | text-color: @normal-foreground; 135 | } 136 | 137 | #button.selected { 138 | background-color: @selected-normal-background; 139 | text-color: @selected-normal-foreground; 140 | } 141 | 142 | #inputbar { 143 | spacing: 0; 144 | text-color: @normal-foreground; 145 | padding: 1px; 146 | } 147 | 148 | #case-indicator { 149 | spacing: 0; 150 | text-color: @normal-foreground; 151 | } 152 | 153 | #entry { 154 | spacing: 0; 155 | text-color: @normal-foreground; 156 | } 157 | 158 | #prompt { 159 | spacing: 0; 160 | text-color: @normal-foreground; 161 | } 162 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-rofi-light.rasi: -------------------------------------------------------------------------------- 1 | * { 2 | active-background: #526261; 3 | active-foreground: @foreground; 4 | normal-background: @background; 5 | normal-foreground: @foreground; 6 | urgent-background: #2A5F66; 7 | urgent-foreground: @foreground; 8 | 9 | alternate-active-background: @background; 10 | alternate-active-foreground: @foreground; 11 | alternate-normal-background: @background; 12 | alternate-normal-foreground: @foreground; 13 | alternate-urgent-background: @background; 14 | alternate-urgent-foreground: @foreground; 15 | 16 | selected-active-background: #2A5F66; 17 | selected-active-foreground: @foreground; 18 | selected-normal-background: #526261; 19 | selected-normal-foreground: @foreground; 20 | selected-urgent-background: #A17647; 21 | selected-urgent-foreground: @foreground; 22 | 23 | background-color: @background; 24 | background: #a7c3c6; 25 | foreground: #171213; 26 | border-color: @background; 27 | spacing: 2; 28 | } 29 | 30 | #window { 31 | background-color: @background; 32 | border: 0; 33 | padding: 2.5ch; 34 | } 35 | 36 | #mainbox { 37 | border: 0; 38 | padding: 0; 39 | } 40 | 41 | #message { 42 | border: 2px 0px 0px; 43 | border-color: @border-color; 44 | padding: 1px; 45 | } 46 | 47 | #textbox { 48 | text-color: @foreground; 49 | } 50 | 51 | #inputbar { 52 | children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; 53 | } 54 | 55 | #textbox-prompt-colon { 56 | expand: false; 57 | str: ":"; 58 | margin: 0px 0.3em 0em 0em; 59 | text-color: @normal-foreground; 60 | } 61 | 62 | #listview { 63 | fixed-height: 0; 64 | border: 2px 0px 0px; 65 | border-color: @border-color; 66 | spacing: 2px; 67 | scrollbar: true; 68 | padding: 2px 0px 0px; 69 | } 70 | 71 | #element { 72 | border: 0; 73 | padding: 1px; 74 | } 75 | 76 | #element.normal.normal { 77 | background-color: @normal-background; 78 | text-color: @normal-foreground; 79 | } 80 | 81 | #element.normal.urgent { 82 | background-color: @urgent-background; 83 | text-color: @urgent-foreground; 84 | } 85 | 86 | #element.normal.active { 87 | background-color: @active-background; 88 | text-color: @active-foreground; 89 | } 90 | 91 | #element.selected.normal { 92 | background-color: @selected-normal-background; 93 | text-color: @selected-normal-foreground; 94 | } 95 | 96 | #element.selected.urgent { 97 | background-color: @selected-urgent-background; 98 | text-color: @selected-urgent-foreground; 99 | } 100 | 101 | #element.selected.active { 102 | background-color: @selected-active-background; 103 | text-color: @selected-active-foreground; 104 | } 105 | 106 | #element.alternate.normal { 107 | background-color: @alternate-normal-background; 108 | text-color: @alternate-normal-foreground; 109 | } 110 | 111 | #element.alternate.urgent { 112 | background-color: @alternate-urgent-background; 113 | text-color: @alternate-urgent-foreground; 114 | } 115 | 116 | #element.alternate.active { 117 | background-color: @alternate-active-background; 118 | text-color: @alternate-active-foreground; 119 | } 120 | 121 | #scrollbar { 122 | width: 4px; 123 | border: 0; 124 | handle-width: 8px; 125 | padding: 0; 126 | } 127 | 128 | #sidebar { 129 | border: 2px 0px 0px; 130 | border-color: @border-color; 131 | } 132 | 133 | #button { 134 | text-color: @normal-foreground; 135 | } 136 | 137 | #button.selected { 138 | background-color: @selected-normal-background; 139 | text-color: @selected-normal-foreground; 140 | } 141 | 142 | #inputbar { 143 | spacing: 0; 144 | text-color: @normal-foreground; 145 | padding: 1px; 146 | } 147 | 148 | #case-indicator { 149 | spacing: 0; 150 | text-color: @normal-foreground; 151 | } 152 | 153 | #entry { 154 | spacing: 0; 155 | text-color: @normal-foreground; 156 | } 157 | 158 | #prompt { 159 | spacing: 0; 160 | text-color: @normal-foreground; 161 | } 162 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-speedcrunch.json: -------------------------------------------------------------------------------- 1 | { 2 | "cursor": "#a7c3c6", 3 | "number": "#a7c3c6", 4 | "parens": "#38708E", 5 | "result": "#3C926A", 6 | "comment": "#74888a", 7 | "matched": "#3C926A", 8 | "function": "#2A5F66", 9 | "operator": "#A17647", 10 | "variable": "#526261", 11 | "scrollbar": "#A17647", 12 | "separator": "#A17647", 13 | "background": "#171213", 14 | "editorbackground": "#171213" 15 | } 16 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-sway: -------------------------------------------------------------------------------- 1 | set $wallpaper /home/gibranlp/Pictures/Wallpapers/wall.jpg 2 | 3 | set $background #171213 4 | set $foreground #a7c3c6 5 | 6 | set $color0 #171213 7 | set $color1 #2A5F66 8 | set $color2 #526261 9 | set $color3 #A17647 10 | set $color4 #3C926A 11 | set $color5 #38708E 12 | set $color6 #23BCB7 13 | set $color7 #a7c3c6 14 | set $color8 #74888a 15 | set $color9 #2A5F66 16 | set $color10 #526261 17 | set $color11 #A17647 18 | set $color12 #3C926A 19 | set $color13 #38708E 20 | set $color14 #23BCB7 21 | set $color15 #a7c3c6 22 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-tty.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | [ "${TERM:-none}" = "linux" ] && \ 3 | printf '%b' '\e]P0171213 4 | \e]P12A5F66 5 | \e]P2526261 6 | \e]P3A17647 7 | \e]P43C926A 8 | \e]P538708E 9 | \e]P623BCB7 10 | \e]P7a7c3c6 11 | \e]P874888a 12 | \e]P92A5F66 13 | \e]PA526261 14 | \e]PBA17647 15 | \e]PC3C926A 16 | \e]PD38708E 17 | \e]PE23BCB7 18 | \e]PFa7c3c6 19 | \ec' 20 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-wal-dmenu.h: -------------------------------------------------------------------------------- 1 | static const char *colors[SchemeLast][2] = { 2 | /* fg bg */ 3 | [SchemeNorm] = { "#a7c3c6", "#171213" }, 4 | [SchemeSel] = { "#a7c3c6", "#2A5F66" }, 5 | [SchemeOut] = { "#a7c3c6", "#23BCB7" }, 6 | }; 7 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-wal-dwm.h: -------------------------------------------------------------------------------- 1 | static const char norm_fg[] = "#a7c3c6"; 2 | static const char norm_bg[] = "#171213"; 3 | static const char norm_border[] = "#74888a"; 4 | 5 | static const char sel_fg[] = "#a7c3c6"; 6 | static const char sel_bg[] = "#526261"; 7 | static const char sel_border[] = "#a7c3c6"; 8 | 9 | static const char urg_fg[] = "#a7c3c6"; 10 | static const char urg_bg[] = "#2A5F66"; 11 | static const char urg_border[] = "#2A5F66"; 12 | 13 | static const char *colors[][3] = { 14 | /* fg bg border */ 15 | [SchemeNorm] = { norm_fg, norm_bg, norm_border }, // unfocused wins 16 | [SchemeSel] = { sel_fg, sel_bg, sel_border }, // the focused win 17 | [SchemeUrg] = { urg_fg, urg_bg, urg_border }, 18 | }; 19 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-wal-st.h: -------------------------------------------------------------------------------- 1 | const char *colorname[] = { 2 | 3 | /* 8 normal colors */ 4 | [0] = "#171213", /* black */ 5 | [1] = "#2A5F66", /* red */ 6 | [2] = "#526261", /* green */ 7 | [3] = "#A17647", /* yellow */ 8 | [4] = "#3C926A", /* blue */ 9 | [5] = "#38708E", /* magenta */ 10 | [6] = "#23BCB7", /* cyan */ 11 | [7] = "#a7c3c6", /* white */ 12 | 13 | /* 8 bright colors */ 14 | [8] = "#74888a", /* black */ 15 | [9] = "#2A5F66", /* red */ 16 | [10] = "#526261", /* green */ 17 | [11] = "#A17647", /* yellow */ 18 | [12] = "#3C926A", /* blue */ 19 | [13] = "#38708E", /* magenta */ 20 | [14] = "#23BCB7", /* cyan */ 21 | [15] = "#a7c3c6", /* white */ 22 | 23 | /* special colors */ 24 | [256] = "#171213", /* background */ 25 | [257] = "#a7c3c6", /* foreground */ 26 | [258] = "#a7c3c6", /* cursor */ 27 | }; 28 | 29 | /* Default colors (colorname index) 30 | * foreground, background, cursor */ 31 | unsigned int defaultbg = 0; 32 | unsigned int defaultfg = 257; 33 | unsigned int defaultcs = 258; 34 | unsigned int defaultrcs= 258; 35 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-wal-tabbed.h: -------------------------------------------------------------------------------- 1 | static const char* selbgcolor = "#171213"; 2 | static const char* selfgcolor = "#a7c3c6"; 3 | static const char* normbgcolor = "#526261"; 4 | static const char* normfgcolor = "#a7c3c6"; 5 | static const char* urgbgcolor = "#2A5F66"; 6 | static const char* urgfgcolor = "#a7c3c6"; 7 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-wal.vim: -------------------------------------------------------------------------------- 1 | " Special 2 | let wallpaper = "/home/gibranlp/Pictures/Wallpapers/wall.jpg" 3 | let background = "#171213" 4 | let foreground = "#a7c3c6" 5 | let cursor = "#a7c3c6" 6 | 7 | " Colors 8 | let color0 = "#171213" 9 | let color1 = "#2A5F66" 10 | let color2 = "#526261" 11 | let color3 = "#A17647" 12 | let color4 = "#3C926A" 13 | let color5 = "#38708E" 14 | let color6 = "#23BCB7" 15 | let color7 = "#a7c3c6" 16 | let color8 = "#74888a" 17 | let color9 = "#2A5F66" 18 | let color10 = "#526261" 19 | let color11 = "#A17647" 20 | let color12 = "#3C926A" 21 | let color13 = "#38708E" 22 | let color14 = "#23BCB7" 23 | let color15 = "#a7c3c6" 24 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors-waybar.css: -------------------------------------------------------------------------------- 1 | @define-color foreground #a7c3c6; 2 | @define-color background #171213; 3 | @define-color cursor #a7c3c6; 4 | 5 | @define-color color0 #171213; 6 | @define-color color1 #2A5F66; 7 | @define-color color2 #526261; 8 | @define-color color3 #A17647; 9 | @define-color color4 #3C926A; 10 | @define-color color5 #38708E; 11 | @define-color color6 #23BCB7; 12 | @define-color color7 #a7c3c6; 13 | @define-color color8 #74888a; 14 | @define-color color9 #2A5F66; 15 | @define-color color10 #526261; 16 | @define-color color11 #A17647; 17 | @define-color color12 #3C926A; 18 | @define-color color13 #38708E; 19 | @define-color color14 #23BCB7; 20 | @define-color color15 #a7c3c6; 21 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.Xresources: -------------------------------------------------------------------------------- 1 | ! X colors. 2 | ! Generated by 'wal' 3 | *foreground: #a7c3c6 4 | *background: #171213 5 | *.foreground: #a7c3c6 6 | *.background: #171213 7 | emacs*foreground: #a7c3c6 8 | emacs*background: #171213 9 | URxvt*foreground: #a7c3c6 10 | XTerm*foreground: #a7c3c6 11 | UXTerm*foreground: #a7c3c6 12 | URxvt*background: [100]#171213 13 | XTerm*background: #171213 14 | UXTerm*background: #171213 15 | URxvt*cursorColor: #a7c3c6 16 | XTerm*cursorColor: #a7c3c6 17 | UXTerm*cursorColor: #a7c3c6 18 | URxvt*borderColor: [100]#171213 19 | 20 | ! Colors 0-15. 21 | *.color0: #171213 22 | *color0: #171213 23 | *.color1: #2A5F66 24 | *color1: #2A5F66 25 | *.color2: #526261 26 | *color2: #526261 27 | *.color3: #A17647 28 | *color3: #A17647 29 | *.color4: #3C926A 30 | *color4: #3C926A 31 | *.color5: #38708E 32 | *color5: #38708E 33 | *.color6: #23BCB7 34 | *color6: #23BCB7 35 | *.color7: #a7c3c6 36 | *color7: #a7c3c6 37 | *.color8: #74888a 38 | *color8: #74888a 39 | *.color9: #2A5F66 40 | *color9: #2A5F66 41 | *.color10: #526261 42 | *color10: #526261 43 | *.color11: #A17647 44 | *color11: #A17647 45 | *.color12: #3C926A 46 | *color12: #3C926A 47 | *.color13: #38708E 48 | *color13: #38708E 49 | *.color14: #23BCB7 50 | *color14: #23BCB7 51 | *.color15: #a7c3c6 52 | *color15: #a7c3c6 53 | 54 | ! Black color that will not be affected by bold highlighting. 55 | *.color66: #171213 56 | *color66: #171213 57 | 58 | ! Xclock colors. 59 | XClock*foreground: #a7c3c6 60 | XClock*background: #171213 61 | XClock*majorColor: rgba:a7/c3/c6/ff 62 | XClock*minorColor: rgba:a7/c3/c6/ff 63 | XClock*hourColor: rgba:a7/c3/c6/ff 64 | XClock*minuteColor: rgba:a7/c3/c6/ff 65 | XClock*secondColor: rgba:a7/c3/c6/ff 66 | 67 | ! Set depth to make transparency work. 68 | URxvt*depth: 32 69 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.css: -------------------------------------------------------------------------------- 1 | /* CSS variables 2 | Generated by 'wal' */ 3 | :root { 4 | --wallpaper: url("/home/gibranlp/Pictures/Wallpapers/wall.jpg"); 5 | 6 | /* Special */ 7 | --background: #171213; 8 | --foreground: #a7c3c6; 9 | --cursor: #a7c3c6; 10 | 11 | /* Colors */ 12 | --color0: #171213; 13 | --color1: #2A5F66; 14 | --color2: #526261; 15 | --color3: #A17647; 16 | --color4: #3C926A; 17 | --color5: #38708E; 18 | --color6: #23BCB7; 19 | --color7: #a7c3c6; 20 | --color8: #74888a; 21 | --color9: #2A5F66; 22 | --color10: #526261; 23 | --color11: #A17647; 24 | --color12: #3C926A; 25 | --color13: #38708E; 26 | --color14: #23BCB7; 27 | --color15: #a7c3c6; 28 | } 29 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.hs: -------------------------------------------------------------------------------- 1 | --Place this file in your .xmonad/lib directory and import module Colors into .xmonad/xmonad.hs config 2 | --The easy way is to create a soft link from this file to the file in .xmonad/lib using ln -s 3 | --Then recompile and restart xmonad. 4 | 5 | module Colors 6 | ( wallpaper 7 | , background, foreground, cursor 8 | , color0, color1, color2, color3, color4, color5, color6, color7 9 | , color8, color9, color10, color11, color12, color13, color14, color15 10 | ) where 11 | 12 | -- Shell variables 13 | -- Generated by 'wal' 14 | wallpaper="/home/gibranlp/Pictures/Wallpapers/wall.jpg" 15 | 16 | -- Special 17 | background="#171213" 18 | foreground="#a7c3c6" 19 | cursor="#a7c3c6" 20 | 21 | -- Colors 22 | color0="#171213" 23 | color1="#2A5F66" 24 | color2="#526261" 25 | color3="#A17647" 26 | color4="#3C926A" 27 | color5="#38708E" 28 | color6="#23BCB7" 29 | color7="#a7c3c6" 30 | color8="#74888a" 31 | color9="#2A5F66" 32 | color10="#526261" 33 | color11="#A17647" 34 | color12="#3C926A" 35 | color13="#38708E" 36 | color14="#23BCB7" 37 | color15="#a7c3c6" 38 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.json: -------------------------------------------------------------------------------- 1 | { 2 | "wallpaper": "/home/gibranlp/Pictures/Wallpapers/wall.jpg", 3 | "alpha": "100", 4 | 5 | "special": { 6 | "background": "#171213", 7 | "foreground": "#a7c3c6", 8 | "cursor": "#a7c3c6" 9 | }, 10 | "colors": { 11 | "color0": "#171213", 12 | "color1": "#2A5F66", 13 | "color2": "#526261", 14 | "color3": "#A17647", 15 | "color4": "#3C926A", 16 | "color5": "#38708E", 17 | "color6": "#23BCB7", 18 | "color7": "#a7c3c6", 19 | "color8": "#74888a", 20 | "color9": "#2A5F66", 21 | "color10": "#526261", 22 | "color11": "#A17647", 23 | "color12": "#3C926A", 24 | "color13": "#38708E", 25 | "color14": "#23BCB7", 26 | "color15": "#a7c3c6" 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.scss: -------------------------------------------------------------------------------- 1 | // SCSS Variables 2 | // Generated by 'wal' 3 | $wallpaper: "/home/gibranlp/Pictures/Wallpapers/wall.jpg"; 4 | 5 | // Special 6 | $background: #171213; 7 | $foreground: #a7c3c6; 8 | $cursor: #a7c3c6; 9 | 10 | // Colors 11 | $color0: #171213; 12 | $color1: #2A5F66; 13 | $color2: #526261; 14 | $color3: #A17647; 15 | $color4: #3C926A; 16 | $color5: #38708E; 17 | $color6: #23BCB7; 18 | $color7: #a7c3c6; 19 | $color8: #74888a; 20 | $color9: #2A5F66; 21 | $color10: #526261; 22 | $color11: #A17647; 23 | $color12: #3C926A; 24 | $color13: #38708E; 25 | $color14: #23BCB7; 26 | $color15: #a7c3c6; 27 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.sh: -------------------------------------------------------------------------------- 1 | # Shell variables 2 | # Generated by 'wal' 3 | wallpaper='/home/gibranlp/Pictures/Wallpapers/wall.jpg' 4 | 5 | # Special 6 | background='#171213' 7 | foreground='#a7c3c6' 8 | cursor='#a7c3c6' 9 | 10 | # Colors 11 | color0='#171213' 12 | color1='#2A5F66' 13 | color2='#526261' 14 | color3='#A17647' 15 | color4='#3C926A' 16 | color5='#38708E' 17 | color6='#23BCB7' 18 | color7='#a7c3c6' 19 | color8='#74888a' 20 | color9='#2A5F66' 21 | color10='#526261' 22 | color11='#A17647' 23 | color12='#3C926A' 24 | color13='#38708E' 25 | color14='#23BCB7' 26 | color15='#a7c3c6' 27 | 28 | # FZF colors 29 | export FZF_DEFAULT_OPTS=" 30 | $FZF_DEFAULT_OPTS 31 | --color fg:7,bg:0,hl:1,fg+:232,bg+:1,hl+:255 32 | --color info:7,prompt:2,spinner:1,pointer:232,marker:1 33 | " 34 | 35 | # Fix LS_COLORS being unreadable. 36 | export LS_COLORS="${LS_COLORS}:su=30;41:ow=30;42:st=30;44:" 37 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/colors.yml: -------------------------------------------------------------------------------- 1 | wallpaper: "/home/gibranlp/Pictures/Wallpapers/wall.jpg" 2 | 3 | special: 4 | background: "#171213" 5 | foreground: "#a7c3c6" 6 | cursor: "#a7c3c6" 7 | 8 | colors: 9 | color0: "#171213" 10 | color1: "#2A5F66" 11 | color2: "#526261" 12 | color3: "#A17647" 13 | color4: "#3C926A" 14 | color5: "#38708E" 15 | color6: "#23BCB7" 16 | color7: "#a7c3c6" 17 | color8: "#74888a" 18 | color9: "#2A5F66" 19 | color10: "#526261" 20 | color11: "#A17647" 21 | color12: "#3C926A" 22 | color13: "#38708E" 23 | color14: "#23BCB7" 24 | color15: "#a7c3c6" 25 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/config: -------------------------------------------------------------------------------- 1 | ## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting. 2 | 3 | 4 | [general] 5 | 6 | # Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0 7 | mode = scientific 8 | 9 | # Accepts only non-negative values. 10 | ; framerate = 60 11 | 12 | # 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off 13 | # new as of 0.6.0 autosens of low values (dynamic range) 14 | # 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0 15 | ; autosens = 1 16 | ; overshoot = 20 17 | 18 | # Manual sensitivity in %. If autosens is enabled, this will only be the initial value. 19 | # 200 means double height. Accepts only non-negative values. 20 | ; sensitivity = 100 21 | 22 | # The number of bars (0-200). 0 sets it to auto (fill up console). 23 | # Bars' width and space between bars in number of characters. 24 | bars = 0 25 | bar_width = 1 26 | bar_spacing = 1 27 | # bar_height is only used for output in "noritake" format 28 | bar_height = 32 29 | 30 | # For SDL width and space between bars is in pixels, defaults are: 31 | bar_width = 0.1 32 | bar_spacing = 1 33 | 34 | 35 | # Lower and higher cutoff frequencies for lowest and highest bars 36 | # the bandwidth of the visualizer. 37 | # Note: there is a minimum total bandwidth of 43Mhz x number of bars. 38 | # Cava will automatically increase the higher cutoff if a too low band is specified. 39 | ; lower_cutoff_freq = 50 40 | ; higher_cutoff_freq = 10000 41 | 42 | 43 | # Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and 44 | # only check for input once per second. Cava will wake up once input is detected. 0 = disable. 45 | ; sleep_timer = 0 46 | 47 | 48 | [input] 49 | 50 | # Audio capturing method. Possible methods are: 'pulse', 'alsa', 'fifo', 'sndio' or 'shmem' 51 | # Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with. 52 | # 53 | # All input methods uses the same config variable 'source' 54 | # to define where it should get the audio. 55 | # 56 | # For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink 57 | # (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them). 58 | # 59 | # For alsa 'source' will be the capture device. 60 | # For fifo 'source' will be the path to fifo-file. 61 | # For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address 62 | ; method = pulse 63 | ; source = auto 64 | 65 | ; method = alsa 66 | ; source = hw:Loopback,1 67 | 68 | ; method = fifo 69 | ; source = /tmp/mpd.fifo 70 | ; sample_rate = 44100 71 | ; sample_bits = 16 72 | 73 | ; method = shmem 74 | ; source = /squeezelite-AA:BB:CC:DD:EE:FF 75 | 76 | ; method = portaudio 77 | ; source = auto 78 | 79 | 80 | [output] 81 | 82 | # Output method. Can be 'ncurses', 'noncurses', 'raw', 'noritake' or 'sdl'. 83 | # 'noncurses' uses a custom framebuffer technique and prints only changes 84 | # from frame to frame in the terminal. 'ncurses' is default if supported. 85 | # 86 | # 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data 87 | # stream of the bar heights that can be used to send to other applications. 88 | # 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above. 89 | # 90 | # 'noritake' outputs a bitmap in the format expected by a Noritake VFD display 91 | # in graphic mode. It only support the 3000 series graphical VFDs for now. 92 | # 93 | # 'sdl' uses the Simple DirectMedia Layer to render in a graphical context. 94 | ; method = ncurses 95 | 96 | # Visual channels. Can be 'stereo' or 'mono'. 97 | # 'stereo' mirrors both channels with low frequencies in center. 98 | # 'mono' outputs left to right lowest to highest frequencies. 99 | # 'mono_option' set mono to either take input from 'left', 'right' or 'average'. 100 | # set 'reverse' to 1 to display frequencies the other way around. 101 | channels = stereo 102 | ; mono_option = average 103 | ; reverse = 0 104 | 105 | # Raw output target. A fifo will be created if target does not exist. 106 | ; raw_target = /dev/stdout 107 | 108 | # Raw data format. Can be 'binary' or 'ascii'. 109 | ; data_format = binary 110 | 111 | # Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530). 112 | ; bit_format = 16bit 113 | 114 | # Ascii max value. In 'ascii' mode range will run from 0 to value specified here 115 | ; ascii_max_range = 1000 116 | 117 | # Ascii delimiters. In ascii format each bar and frame is separated by a delimiters. 118 | # Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)). 119 | ; bar_delimiter = 59 120 | ; frame_delimiter = 10 121 | 122 | # sdl window size and position. -1,-1 is centered. 123 | ; sdl_width = 1000 124 | ; sdl_height = 500 125 | ; sdl_x = -1 126 | ; sdl_y= -1 127 | 128 | # set label on bars on the x-axis. Can be 'frequency' or 'none'. Default: 'none' 129 | # 'frequency' displays the lower cut off frequency of the bar above. 130 | # Only supported on ncurses and noncurses output. 131 | ; xaxis = none 132 | 133 | # enable alacritty synchronized updates. 1 = on, 0 = off 134 | # removes flickering in alacritty terminal emeulator. 135 | # defaults to off since the behaviour in other terminal emulators is unknown 136 | ; alacritty_sync = 0 137 | 138 | [color] 139 | 140 | # Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow. 141 | # Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires 142 | # a terminal that can change color definitions such as Gnome-terminal or rxvt. 143 | # default is to keep current terminal color 144 | ; background = default 145 | ; foreground = default 146 | 147 | # SDL only support hex code colors, these are the default: 148 | background = '#171213' 149 | foreground = '#a7c3c6' 150 | 151 | 152 | # Gradient mode, only hex defined colors are supported, 153 | # background must also be defined in hex or remain commented out. 1 = on, 0 = off. 154 | # You can define as many as 8 different colors. They range from bottom to top of screen 155 | gradient = 1 156 | gradient_count = 8 157 | gradient_color_1 = '#2A5F66' 158 | gradient_color_2 = '#526261' 159 | gradient_color_3 = '#A17647' 160 | gradient_color_4 = '#3C926A' 161 | gradient_color_5 = '#38708E' 162 | gradient_color_6 = '#23BCB7' 163 | gradient_color_7 = '#a7c3c6' 164 | gradient_color_8 = '#74888a' 165 | 166 | 167 | [smoothing] 168 | 169 | # Percentage value for integral smoothing. Takes values from 0 - 100. 170 | # Higher values means smoother, but less precise. 0 to disable. 171 | # DEPRECATED as of 0.8.0, use noise_reduction instead 172 | ; integral = 77 173 | 174 | # Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable. 175 | ; monstercat = 0 176 | ; waves = 0 177 | 178 | # Set gravity percentage for "drop off". Higher values means bars will drop faster. 179 | # Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off". 180 | # DEPRECATED as of 0.8.0, use noise_reduction instead 181 | ; gravity = 300 182 | 183 | 184 | # In bar height, bars that would have been lower that this will not be drawn. 185 | # DEPRECATED as of 0.8.0 186 | ; ignore = 0 187 | 188 | # Noise reduction, float 0 - 1. default 0.77 189 | # the raw visualization is very noisy, this factor adjusts the integral and gravity filters to keep the signal smooth 190 | # 1 will be very slow and smooth, 0 will be fast but noisy. 191 | ; noise_reduction = 0.77 192 | 193 | 194 | [eq] 195 | 196 | # This one is tricky. You can have as much keys as you want. 197 | # Remember to uncomment more then one key! More keys = more precision. 198 | # Look at readme.md on github for further explanations and examples. 199 | ; 1 = 1 # bass 200 | ; 2 = 1 201 | ; 3 = 1 # midtone 202 | ; 4 = 1 203 | ; 5 = 1 # treble 204 | -------------------------------------------------------------------------------- /dotfiles/.cache/wal/flameshot.ini: -------------------------------------------------------------------------------- 1 | [General] 2 | contrastOpacity=188 3 | contrastUiColor=#171213 4 | uiColor=#2A5F66 -------------------------------------------------------------------------------- /dotfiles/.cache/wal/schemes/_usr_local_backgrounds_background_png_dark_colorthief_None_1.1.0.json: -------------------------------------------------------------------------------- 1 | { 2 | "wallpaper": "/usr/local/backgrounds/background.png", 3 | "alpha": "100", 4 | "special": { 5 | "background": "#07080a", 6 | "foreground": "#a7aaad", 7 | "cursor": "#a7aaad" 8 | }, 9 | "colors": { 10 | "color0": "#07080a", 11 | "color1": "#2c304c", 12 | "color2": "#343c44", 13 | "color3": "#3c4454", 14 | "color4": "#545c64", 15 | "color5": "#bc5444", 16 | "color6": "#54b4c4", 17 | "color7": "#a7aaad", 18 | "color8": "#4f565c", 19 | "color9": "#2c304c", 20 | "color10": "#343c44", 21 | "color11": "#3c4454", 22 | "color12": "#545c64", 23 | "color13": "#bc5444", 24 | "color14": "#54b4c4", 25 | "color15": "#a7aaad" 26 | } 27 | } -------------------------------------------------------------------------------- /dotfiles/.cache/wal/schemes/_usr_local_backgrounds_background_png_dark_wal_None_1.1.0.json: -------------------------------------------------------------------------------- 1 | { 2 | "wallpaper": "/usr/local/backgrounds/background.png", 3 | "alpha": "100", 4 | "special": { 5 | "background": "#19061f", 6 | "foreground": "#a4e5bb", 7 | "cursor": "#a4e5bb" 8 | }, 9 | "colors": { 10 | "color0": "#19061f", 11 | "color1": "#2B966C", 12 | "color2": "#44906F", 13 | "color3": "#4BA876", 14 | "color4": "#53D975", 15 | "color5": "#B5CD6A", 16 | "color6": "#46AC82", 17 | "color7": "#a4e5bb", 18 | "color8": "#72a082", 19 | "color9": "#2B966C", 20 | "color10": "#44906F", 21 | "color11": "#4BA876", 22 | "color12": "#53D975", 23 | "color13": "#B5CD6A", 24 | "color14": "#46AC82", 25 | "color15": "#a4e5bb" 26 | } 27 | } -------------------------------------------------------------------------------- /dotfiles/.cache/wal/schemes/_usr_local_backgrounds_background_png_light_colorthief_None_1.1.0.json: -------------------------------------------------------------------------------- 1 | { 2 | "wallpaper": "/usr/local/backgrounds/background.png", 3 | "alpha": "100", 4 | "special": { 5 | "background": "#e7e9ea", 6 | "foreground": "#04090b", 7 | "cursor": "#04090b" 8 | }, 9 | "colors": { 10 | "color0": "#e7e9ea", 11 | "color1": "#14516c", 12 | "color2": "#56574c", 13 | "color3": "#1d6d84", 14 | "color4": "#c33869", 15 | "color5": "#2287a9", 16 | "color6": "#749c6c", 17 | "color7": "#04090b", 18 | "color8": "#415058", 19 | "color9": "#14516c", 20 | "color10": "#56574c", 21 | "color11": "#1d6d84", 22 | "color12": "#c33869", 23 | "color13": "#2287a9", 24 | "color14": "#749c6c", 25 | "color15": "#04090b" 26 | } 27 | } -------------------------------------------------------------------------------- /dotfiles/.cache/wal/schemes/_usr_local_backgrounds_background_png_light_wal_None_1.1.0.json: -------------------------------------------------------------------------------- 1 | { 2 | "wallpaper": "/usr/local/backgrounds/background.png", 3 | "alpha": "100", 4 | "special": { 5 | "background": "#f4f8f3", 6 | "foreground": "#131317", 7 | "cursor": "#131317" 8 | }, 9 | "colors": { 10 | "color0": "#f4f8f3", 11 | "color1": "#3B434A", 12 | "color2": "#5C5D59", 13 | "color3": "#972C2E", 14 | "color4": "#C74643", 15 | "color5": "#6D9269", 16 | "color6": "#8E9C77", 17 | "color7": "#131317", 18 | "color8": "#707e6b", 19 | "color9": "#3B434A", 20 | "color10": "#5C5D59", 21 | "color11": "#972C2E", 22 | "color12": "#C74643", 23 | "color13": "#6D9269", 24 | "color14": "#8E9C77", 25 | "color15": "#131317" 26 | } 27 | } -------------------------------------------------------------------------------- /dotfiles/.cache/wal/sequences: -------------------------------------------------------------------------------- 1 | ]4;0;#171213\]4;1;#2A5F66\]4;2;#526261\]4;3;#A17647\]4;4;#3C926A\]4;5;#38708E\]4;6;#23BCB7\]4;7;#a7c3c6\]4;8;#74888a\]4;9;#2A5F66\]4;10;#526261\]4;11;#A17647\]4;12;#3C926A\]4;13;#38708E\]4;14;#23BCB7\]4;15;#a7c3c6\]10;#a7c3c6\]11;#171213\]12;#a7c3c6\]13;#a7c3c6\]17;#a7c3c6\]19;#171213\]4;232;#171213\]4;256;#a7c3c6\]708;#171213\ -------------------------------------------------------------------------------- /dotfiles/.cache/wal/wal: -------------------------------------------------------------------------------- 1 | /home/gibranlp/Pictures/Wallpapers/wall.jpg -------------------------------------------------------------------------------- /dotfiles/.config/cava/config: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | [general] 13 | 14 | # Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0 15 | mode = scientific 16 | 17 | # Accepts only non-negative values. 18 | ; framerate = 60 19 | 20 | # 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off 21 | # new as of 0.6.0 autosens of low values (dynamic range) 22 | # 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0 23 | ; autosens = 1 24 | ; overshoot = 20 25 | 26 | # Manual sensitivity in %. If autosens is enabled, this will only be the initial value. 27 | # 200 means double height. Accepts only non-negative values. 28 | ; sensitivity = 100 29 | 30 | # The number of bars (0-200). 0 sets it to auto (fill up console). 31 | # Bars' width and space between bars in number of characters. 32 | bars = 0 33 | bar_width = 1 34 | bar_spacing = 1 35 | # bar_height is only used for output in "noritake" format 36 | bar_height = 32 37 | 38 | # For SDL width and space between bars is in pixels, defaults are: 39 | bar_width = 0.1 40 | bar_spacing = 1 41 | 42 | 43 | # Lower and higher cutoff frequencies for lowest and highest bars 44 | # the bandwidth of the visualizer. 45 | # Note: there is a minimum total bandwidth of 43Mhz x number of bars. 46 | # Cava will automatically increase the higher cutoff if a too low band is specified. 47 | ; lower_cutoff_freq = 50 48 | ; higher_cutoff_freq = 10000 49 | 50 | 51 | # Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and 52 | # only check for input once per second. Cava will wake up once input is detected. 0 = disable. 53 | ; sleep_timer = 0 54 | 55 | 56 | [input] 57 | 58 | # Audio capturing method. Possible methods are: 'pulse', 'alsa', 'fifo', 'sndio' or 'shmem' 59 | # Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with. 60 | # 61 | # All input methods uses the same config variable 'source' 62 | # to define where it should get the audio. 63 | # 64 | # For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink 65 | # (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them). 66 | # 67 | # For alsa 'source' will be the capture device. 68 | # For fifo 'source' will be the path to fifo-file. 69 | # For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address 70 | ; method = pulse 71 | ; source = auto 72 | 73 | ; method = alsa 74 | ; source = hw:Loopback,1 75 | 76 | ; method = fifo 77 | ; source = /tmp/mpd.fifo 78 | ; sample_rate = 44100 79 | ; sample_bits = 16 80 | 81 | ; method = shmem 82 | ; source = /squeezelite-AA:BB:CC:DD:EE:FF 83 | 84 | ; method = portaudio 85 | ; source = auto 86 | 87 | 88 | [output] 89 | 90 | # Output method. Can be 'ncurses', 'noncurses', 'raw', 'noritake' or 'sdl'. 91 | # 'noncurses' uses a custom framebuffer technique and prints only changes 92 | # from frame to frame in the terminal. 'ncurses' is default if supported. 93 | # 94 | # 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data 95 | # stream of the bar heights that can be used to send to other applications. 96 | # 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above. 97 | # 98 | # 'noritake' outputs a bitmap in the format expected by a Noritake VFD display 99 | # in graphic mode. It only support the 3000 series graphical VFDs for now. 100 | # 101 | # 'sdl' uses the Simple DirectMedia Layer to render in a graphical context. 102 | ; method = ncurses 103 | 104 | # Visual channels. Can be 'stereo' or 'mono'. 105 | # 'stereo' mirrors both channels with low frequencies in center. 106 | # 'mono' outputs left to right lowest to highest frequencies. 107 | # 'mono_option' set mono to either take input from 'left', 'right' or 'average'. 108 | # set 'reverse' to 1 to display frequencies the other way around. 109 | channels = stereo 110 | ; mono_option = average 111 | ; reverse = 0 112 | 113 | # Raw output target. A fifo will be created if target does not exist. 114 | ; raw_target = /dev/stdout 115 | 116 | # Raw data format. Can be 'binary' or 'ascii'. 117 | ; data_format = binary 118 | 119 | # Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530). 120 | ; bit_format = 16bit 121 | 122 | # Ascii max value. In 'ascii' mode range will run from 0 to value specified here 123 | ; ascii_max_range = 1000 124 | 125 | # Ascii delimiters. In ascii format each bar and frame is separated by a delimiters. 126 | # Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)). 127 | ; bar_delimiter = 59 128 | ; frame_delimiter = 10 129 | 130 | # sdl window size and position. -1,-1 is centered. 131 | ; sdl_width = 1000 132 | ; sdl_height = 500 133 | ; sdl_x = -1 134 | ; sdl_y= -1 135 | 136 | # set label on bars on the x-axis. Can be 'frequency' or 'none'. Default: 'none' 137 | # 'frequency' displays the lower cut off frequency of the bar above. 138 | # Only supported on ncurses and noncurses output. 139 | ; xaxis = none 140 | 141 | # enable alacritty synchronized updates. 1 = on, 0 = off 142 | # removes flickering in alacritty terminal emeulator. 143 | # defaults to off since the behaviour in other terminal emulators is unknown 144 | ; alacritty_sync = 0 145 | 146 | [color] 147 | 148 | # Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow. 149 | # Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires 150 | # a terminal that can change color definitions such as Gnome-terminal or rxvt. 151 | # default is to keep current terminal color 152 | ; background = default 153 | ; foreground = default 154 | 155 | # SDL only support hex code colors, these are the default: 156 | background = '{color0}' 157 | foreground = '{color7}' 158 | 159 | 160 | # Gradient mode, only hex defined colors are supported, 161 | # background must also be defined in hex or remain commented out. 1 = on, 0 = off. 162 | # You can define as many as 8 different colors. They range from bottom to top of screen 163 | gradient = 1 164 | gradient_count = 8 165 | gradient_color_1 = '{color1}' 166 | gradient_color_2 = '{color2}' 167 | gradient_color_3 = '{color3}' 168 | gradient_color_4 = '{color4}' 169 | gradient_color_5 = '{color5}' 170 | gradient_color_6 = '{color6}' 171 | gradient_color_7 = '{color7}' 172 | gradient_color_8 = '{color8}' 173 | 174 | 175 | [smoothing] 176 | 177 | # Percentage value for integral smoothing. Takes values from 0 - 100. 178 | # Higher values means smoother, but less precise. 0 to disable. 179 | # DEPRECATED as of 0.8.0, use noise_reduction instead 180 | ; integral = 77 181 | 182 | # Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable. 183 | ; monstercat = 0 184 | ; waves = 0 185 | 186 | # Set gravity percentage for "drop off". Higher values means bars will drop faster. 187 | # Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off". 188 | # DEPRECATED as of 0.8.0, use noise_reduction instead 189 | ; gravity = 300 190 | 191 | 192 | # In bar height, bars that would have been lower that this will not be drawn. 193 | # DEPRECATED as of 0.8.0 194 | ; ignore = 0 195 | 196 | # Noise reduction, float 0 - 1. default 0.77 197 | # the raw visualization is very noisy, this factor adjusts the integral and gravity filters to keep the signal smooth 198 | # 1 will be very slow and smooth, 0 will be fast but noisy. 199 | ; noise_reduction = 0.77 200 | 201 | 202 | [eq] 203 | 204 | # This one is tricky. You can have as much keys as you want. 205 | # Remember to uncomment more then one key! More keys = more precision. 206 | # Look at readme.md on github for further explanations and examples. 207 | ; 1 = 1 # bass 208 | ; 2 = 1 209 | ; 3 = 1 # midtone 210 | ; 4 = 1 211 | ; 5 = 1 # treble 212 | -------------------------------------------------------------------------------- /dotfiles/.config/flameshot/flameshot.ini: -------------------------------------------------------------------------------- 1 | [General] 2 | contrastOpacity=188 3 | contrastUiColor={color0} 4 | uiColor={color1} -------------------------------------------------------------------------------- /dotfiles/.config/gromit-mpx.ini: -------------------------------------------------------------------------------- 1 | [General] 2 | ShowIntroOnStartup=false 3 | 4 | [Drawing] 5 | Opacity=0.75 6 | 7 | "Core Pointer" = "orange Pen"; 8 | "Core Pointer"[SHIFT] = "blue Pen"; 9 | "Core Pointer"[CONTROL] = "yellow Pen"; 10 | -------------------------------------------------------------------------------- /dotfiles/.config/ncspot/config.toml: -------------------------------------------------------------------------------- 1 | notify = true 2 | flip_status_indicators=true 3 | shuffle = true 4 | 5 | 6 | -------------------------------------------------------------------------------- /dotfiles/.config/nvim/init.vim: -------------------------------------------------------------------------------- 1 | call plug#begin() 2 | Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} 3 | Plug 'AlphaTechnolog/pywal.nvim', { 'as': 'pywal' } 4 | call plug#end() -------------------------------------------------------------------------------- /dotfiles/.config/qtile/__pycache__/functions.cpython-311.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.config/qtile/__pycache__/functions.cpython-311.pyc -------------------------------------------------------------------------------- /dotfiles/.config/qtile/keys.py: -------------------------------------------------------------------------------- 1 | from theme import * 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | ## 11 | keys = [ 12 | #Basics 13 | Key([alt], "r",lazy.function(change_wallpaper)), # Set random wallpaper / colors to entire system 14 | Key([mod, "shift"], "e",lazy.spawn(home + '/.local/bin/selectwal')), # Set random wallpaper / colors to entire system 15 | Key([mod], "Return", lazy.spawn(terminal)), # Open Terminal 16 | Key([mod, "shift"], "Return", lazy.spawn('rofi -show drun -show-icons -theme "~/.config/rofi/launcher.rasi"')), # Open Rofi launcher 17 | Key([alt, "shift"], "Return", lazy.spawn('sudo rofi -show drun -show-icons -theme "~/.config/rofi/launcher.rasi"')), # Open Rofi launcher as Sudo 18 | Key(["control", "shift"], "Return", lazy.function(emojis)), # Open Rofi Emojis 19 | Key([mod], "r", lazy.spawncmd()), # Launch Prompt 20 | Key([mod], "q",lazy.window.kill()), # Close Window 21 | Key([mod, "shift"], "r",lazy.reload_config()), # Restart Qtile 22 | Key([mod, "shift"], "q",lazy.shutdown()), # Logout 23 | Key([alt], "Escape", lazy.spawn('xkill')), # Click window to close 24 | 25 | # Widgets 26 | Key([mod],"s",lazy.function(shortcuts)), # Shortcuts widget 27 | Key([mod],"c",lazy.spawn(home + '/.local/bin/calculator')), # Calculator Widget 28 | Key([mod], "n", lazy.spawn(home + '/.local/bin/notesfi')), # Notes Widget 29 | Key([mod],"d",lazy.function(dark_white)), # Select Dark or Light Theme 30 | Key([mod, "shift"],"w",lazy.function(bar_pos)), # Set bar position 31 | Key([mod, "shift"],"o",lazy.function(nightLight_widget)), # Set night light 32 | Key([mod],"p",lazy.function(fargewidget)), # Color Picker Widget 33 | Key(["control", "shift"], "r", lazy.spawn(home + '/.local/bin/recorder')), # Recorder Widget 34 | Key([mod, "shift"],"p",lazy.function(draw_widget)), # Desktop draw widget 35 | Key([alt], "Return", lazy.function(control_panel)), # Search for files and folders 36 | Key([mod], "b", lazy.spawn(home + '/.local/bin/bluet')), # Bluetooth widget 37 | Key([mod],"x",lazy.function(session_widget)), # Log out 38 | Key([mod],"f",lazy.function(network_widget)), # Network Settings 39 | Key([alt, "shift"],"w",lazy.function(set_default_backend)), # Set Default Color Scheme 40 | Key([alt],"w",lazy.function(change_theme)), # Change Theme 41 | Key([mod, "shift"],"x",lazy.spawn(home + '/.local/bin/change_display')),# Monitor modes Widget 42 | Key([alt, "shift"], "r",lazy.function(random_colors)), # Set randwom wallpaper / colors to entire system 43 | 44 | # Layouts 45 | Key([mod], "Tab",lazy.layout.down() ), # Change focus of windows down 46 | Key([mod, "shift"], "Tab",lazy.layout.up()), # Change focus of windows up 47 | Key([alt], "Tab", lazy.layout.swap_left()), # Swap Left Down 48 | Key([alt, "shift"], "Tab", lazy.layout.swap_right()), # Swap Right Up 49 | Key([mod], 'period', lazy.next_screen()), # Send Cursor to next screen 50 | 51 | # Brightness 52 | Key([], "XF86MonBrightnessUp", lazy.spawn("sudo xbacklight -inc 5")), # Aument Brightness 53 | Key(["control", alt], "p", lazy.spawn("sudo xbacklight -inc 5")), # Aument Brightness 54 | Key([], "XF86MonBrightnessDown", lazy.spawn("sudo xbacklight -dec 5")), # Lower Brightness 55 | Key(["control", alt], "o", lazy.spawn("sudo xbacklight -dec 5")), 56 | 57 | # Volume 58 | Key([], "XF86AudioMute", lazy.spawn("amixer -q set Master toggle")), # Mute 59 | Key([], "XF86AudioLowerVolume", lazy.spawn("amixer -q set Master 2%- && dunstify -a Volume ' '$(pamixer --get-volume-human) -h int:value:$(pamixer --get-volume)", shell=True)), 60 | Key([], "XF86AudioRaiseVolume", lazy.spawn("amixer -q set Master 2%+ && dunstify -a Volume ' '$(pamixer --get-volume-human) -h int:value:$(pamixer --get-volume)", shell=True)), # Raise Volume 61 | 62 | # Media Control 63 | Key([], "XF86AudioPlay", lazy.spawn("playerctl --player=%any play-pause")), # Play Pause 64 | Key([], "XF86AudioNext", lazy.spawn("playerctl --player=%any next")), # Next song 65 | Key([], "XF86AudioPrev", lazy.spawn("playerctl --player=%any previous")), # Previous Song 66 | 67 | # Window hotkeys 68 | Key([alt], "g", lazy.window.toggle_fullscreen()), # Toggle Current window ;n 69 | Key([alt, "shift"], "f", lazy.window.toggle_floating()), # Toggle current window floating 70 | Key([mod], "space", lazy.next_layout()), # Cycle layouts 71 | 72 | # Resize windows 73 | Key([mod], "h", lazy.layout.left()), 74 | Key([mod], "l", lazy.layout.right()), 75 | Key([mod], "j", lazy.layout.down()), 76 | Key([mod], "k", lazy.layout.up()), 77 | Key([mod, "shift"], "h", lazy.layout.swap_left()), 78 | Key([mod, "shift"], "l", lazy.layout.swap_right()), 79 | Key([mod, "shift"], "j", lazy.layout.shuffle_down()), 80 | Key([mod, "shift"], "k", lazy.layout.shuffle_up()), 81 | Key([mod], "i", lazy.layout.grow()), 82 | Key([mod, "shift"], "i", lazy.layout.grow_main()), 83 | Key([mod], "m", lazy.layout.shrink()), 84 | Key([mod, "shift"], "m", lazy.layout.shrink_main()), 85 | Key([mod], "o", lazy.layout.maximize()), 86 | Key([mod, "shift"], "space", lazy.layout.flip()), 87 | 88 | # Keyboard 89 | Key([alt], "space", lazy.widget["keyboardlayout"].next_keyboard()), # Change Keyboard Layout 90 | 91 | # Screenshots 92 | Key([], "Print", lazy.function(screenshot)), 93 | 94 | # Lock Screen 95 | Key(["control", alt],"l",lazy.function(i3lock_colors)), # Run i3lock 96 | 97 | # Dunst Shortuts 98 | Key(["control"], "space", lazy.spawn("dunstctl close")), # Clear Last Notification 99 | Key(["control", "shift"], "space", lazy.spawn("dunstctl close-all")), # Clear All Notifications 100 | Key(["control", "shift"], "n", lazy.spawn("dunstctl history-pop")), # Show Notificaction history 101 | ] 102 | -------------------------------------------------------------------------------- /dotfiles/.config/qtile/test.py: -------------------------------------------------------------------------------- 1 | from functions import * 2 | 3 | if int(variables[9]) == 5 or int(variables[9]) == 7 or int(variables[9]) == 8 or int(variables[9]) == 9: 4 | groups_font = awesome_font - 6 5 | print('yes') 6 | else: 7 | groups_font = awesome_font 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /dotfiles/.config/qtile/themes/dark/Minimal.py: -------------------------------------------------------------------------------- 1 | # _______ _______ ______ _______ __ 2 | #| || _ || __ \| __|| |.-----. 3 | #| - _|| || <|__ || || _ | 4 | #|_______||___|___||___|__||_______||__|| __| 5 | # |__| 6 | # SpectrumOS - Embrace the Chromatic Symphony! 7 | # By: gibranlp 8 | # MIT licence 9 | from functions import * 10 | 11 | # Theme 12 | ## Screens 13 | 14 | def init_widgets_list(): 15 | widgets_list = [ 16 | widget.GroupBox( 17 | background=color[0], 18 | fontsize=groups_font, 19 | font=awesome_font, 20 | disable_drag=True, 21 | hide_unused=hide_unused_groups, 22 | padding_x=3, 23 | borderwidth=0, 24 | active=color[3], #Program opened in that group 25 | inactive=color[6], # Empty Group 26 | rounded=False, 27 | highlight_method="text", 28 | this_current_screen_border=color[2], 29 | center_aligned = True, 30 | other_curren_screen_border=color[2], 31 | block_highlight_text_color=color[2], 32 | urgent_border="fc0000", 33 | ), 34 | widget.WindowName( 35 | background=color[0], 36 | foreground=color[2], 37 | format='{name}', 38 | scroll=True, 39 | scroll_delay=2, 40 | scroll_repeat=True, 41 | scroll_step=1, 42 | width=500, 43 | ), 44 | widget.Prompt( 45 | background=color[0], 46 | prompt=prompt, 47 | foreground=color[4], 48 | cursor_color=color[4], 49 | visual_bell_color=[4], 50 | ), 51 | widget.Spacer( 52 | length=bar.STRETCH, 53 | background=color[0], 54 | ), 55 | widget.Mpris2( 56 | background=color[0], 57 | mouse_callbacks={'Button1': lambda: qtile.spawn(terminal + " -e cava")}, 58 | objname=None, 59 | foreground=color[6], 60 | width=widget_width, 61 | format=' {xesam:artist} -  {xesam:title}', 62 | stopped_text="Stop", 63 | paused_text='  ', 64 | scroll=True, 65 | scroll_repeat=True, 66 | scroll_delay=0.1, 67 | ), 68 | widget.OpenWeather( 69 | background=color[0], 70 | app_key=w_appkey, 71 | cityid=w_cityid, 72 | weather_symbols={ 73 | "Unknown": "", 74 | "01d": "", 75 | "01n": "", 76 | "02d": "", 77 | "02n": "", 78 | "03d": "", 79 | "03n": "", 80 | "04d": "", 81 | "04n": "", 82 | "09d": "⛆", 83 | "09n": "⛆", 84 | "10d": "", 85 | "10n": "", 86 | "11d": "🌩", 87 | "11n": "🌩", 88 | "13d": "❄", 89 | "13n": "❄", 90 | "50d": "🌫", 91 | "50n": "🌫", 92 | }, 93 | format='{icon}', 94 | foreground=color[5], 95 | metric=True, 96 | update_interval=600, 97 | ), 98 | ## Network 99 | widget.TextBox( 100 | background=color[0], 101 | text=wifi_icon, 102 | foreground=color[3], 103 | mouse_callbacks={'Button1': lambda: qtile.function(network_widget)}, 104 | ), 105 | widget.ALSAWidget( 106 | background=color[0], 107 | device='Master', 108 | bar_colour_high=color[5], 109 | bar_colour_loud=color[5], 110 | bar_colour_normal=color[5], 111 | bar_colour_mute=color[5], 112 | hide_interval=5, 113 | update_interval=0.1, 114 | bar_width=80, 115 | mode='bar', 116 | foreground=color[0], 117 | text_format=' ', 118 | ), 119 | widget.Clock( 120 | foreground=color[1], 121 | format="%a %d %H:%M", 122 | update_interval=1, 123 | background=color[0], 124 | mouse_callbacks={'Button1': lambda: qtile.function(calendar_notification),'Button4': lambda: qtile.function(calendar_notification_prev),'Button5': lambda: qtile.function(calendar_notification_next)}, 125 | ), 126 | widget.UPowerWidget( 127 | border_charge_colour=color[2], 128 | border_colour=secondary_color[0], 129 | border_critical_colour='#cc0000', 130 | fill_critical='#cc0000', 131 | fill_low='#FF5511', 132 | fill_normal=color[2], 133 | foreground=color[2], 134 | background=color[0], 135 | percentage_critical=0.2, 136 | percentage_low=0.4, 137 | text_charging=' ({percentage:.0f}%) {ttf} to ', 138 | text_discharging=' ({percentage:.0f}%) {tte} Left', 139 | ), 140 | ## Lock, Logout, Poweroff 141 | widget.TextBox( 142 | background=color[0], 143 | foreground=color[2], 144 | text="", 145 | mouse_callbacks={'Button1': lambda: qtile.function(session_widget)}, 146 | )] 147 | return widgets_list 148 | 149 | def screen1_widgets(): 150 | widgets_screen1=init_widgets_list() 151 | return widgets_screen1 152 | 153 | 154 | def init_screens_bottom(): 155 | return[Screen(bottom=bar.Bar(widgets=screen1_widgets(),size=bar_size,background=transparent,margin=bar_margin))] 156 | 157 | def init_screens_top(): 158 | return[Screen(top=bar.Bar(widgets=screen1_widgets(),size=bar_size,background=transparent,margin=bar_margin))] 159 | 160 | if bar_position == "top": 161 | screens=init_screens_top() 162 | else: 163 | screens=init_screens_bottom() 164 | 165 | widgets_list = init_widgets_list() 166 | widgets_screen1 = screen1_widgets() -------------------------------------------------------------------------------- /dotfiles/.config/qtile/themes/dark/no_bar.py: -------------------------------------------------------------------------------- 1 | # _______ _______ ______ _______ __ 2 | #| || _ || __ \| __|| |.-----. 3 | #| - _|| || <|__ || || _ | 4 | #|_______||___|___||___|__||_______||__|| __| 5 | # |__| 6 | # SpectrumOS - Embrace the Chromatic Symphony! 7 | # By: gibranlp 8 | # MIT licence 9 | from functions import * 10 | 11 | # Theme 12 | ## Screens 13 | 14 | screens = [ 15 | Screen( 16 | ), 17 | ] 18 | -------------------------------------------------------------------------------- /dotfiles/.config/qtile/themes/light/Minimal.py: -------------------------------------------------------------------------------- 1 | # _______ _______ ______ _______ __ 2 | #| || _ || __ \| __|| |.-----. 3 | #| - _|| || <|__ || || _ | 4 | #|_______||___|___||___|__||_______||__|| __| 5 | # |__| 6 | # SpectrumOS - Embrace the Chromatic Symphony! 7 | # By: gibranlp 8 | # MIT licence 9 | from functions import * 10 | 11 | # Theme 12 | ## Screens 13 | 14 | def init_widgets_list(): 15 | widgets_list = [ 16 | widget.GroupBox( 17 | background=color[0], 18 | fontsize=groups_font, 19 | font=awesome_font, 20 | disable_drag=True, 21 | hide_unused=hide_unused_groups, 22 | padding_x=3, 23 | borderwidth=0, 24 | active=color[3], #Program opened in that group 25 | inactive=color[6], # Empty Group 26 | rounded=False, 27 | highlight_method="text", 28 | this_current_screen_border=color[2], 29 | center_aligned = True, 30 | other_curren_screen_border=color[2], 31 | block_highlight_text_color=color[2], 32 | urgent_border="fc0000", 33 | ), 34 | widget.WindowName( 35 | background=color[0], 36 | foreground=color[2], 37 | format='{name}', 38 | scroll=True, 39 | scroll_delay=2, 40 | scroll_repeat=True, 41 | scroll_step=1, 42 | width=500, 43 | ), 44 | widget.Prompt( 45 | background=color[0], 46 | prompt=prompt, 47 | foreground=color[4], 48 | cursor_color=color[4], 49 | visual_bell_color=[4], 50 | ), 51 | widget.Spacer( 52 | length=bar.STRETCH, 53 | background=color[0], 54 | ), 55 | widget.Mpris2( 56 | background=color[0], 57 | mouse_callbacks={'Button1': lambda: qtile.spawn(terminal + " -e cava")}, 58 | objname=None, 59 | foreground=color[6], 60 | width=widget_width, 61 | format=' {xesam:artist} -  {xesam:title}', 62 | stopped_text="Stop", 63 | paused_text='  ', 64 | scroll=True, 65 | scroll_repeat=True, 66 | scroll_delay=0.1, 67 | ), 68 | widget.OpenWeather( 69 | background=color[0], 70 | app_key=w_appkey, 71 | cityid=w_cityid, 72 | weather_symbols={ 73 | "Unknown": "", 74 | "01d": "", 75 | "01n": "", 76 | "02d": "", 77 | "02n": "", 78 | "03d": "", 79 | "03n": "", 80 | "04d": "", 81 | "04n": "", 82 | "09d": "⛆", 83 | "09n": "⛆", 84 | "10d": "", 85 | "10n": "", 86 | "11d": "🌩", 87 | "11n": "🌩", 88 | "13d": "❄", 89 | "13n": "❄", 90 | "50d": "🌫", 91 | "50n": "🌫", 92 | }, 93 | format='{icon}', 94 | foreground=color[5], 95 | metric=True, 96 | update_interval=600, 97 | ), 98 | ## Network 99 | widget.TextBox( 100 | background=color[0], 101 | text=wifi_icon, 102 | foreground=color[3], 103 | mouse_callbacks={'Button1': lambda: qtile.function(network_widget)}, 104 | ), 105 | widget.ALSAWidget( 106 | background=color[0], 107 | device='Master', 108 | bar_colour_high=color[5], 109 | bar_colour_loud=color[5], 110 | bar_colour_normal=color[5], 111 | bar_colour_mute=color[5], 112 | hide_interval=5, 113 | update_interval=0.1, 114 | bar_width=80, 115 | mode='bar', 116 | foreground=color[0], 117 | text_format=' ', 118 | ), 119 | widget.Clock( 120 | foreground=color[1], 121 | format="%a %d %H:%M", 122 | update_interval=1, 123 | background=color[0], 124 | mouse_callbacks={'Button1': lambda: qtile.function(calendar_notification),'Button4': lambda: qtile.function(calendar_notification_prev),'Button5': lambda: qtile.function(calendar_notification_next)}, 125 | ), 126 | widget.UPowerWidget( 127 | border_charge_colour=color[2], 128 | border_colour=secondary_color[0], 129 | border_critical_colour='#cc0000', 130 | fill_critical='#cc0000', 131 | fill_low='#FF5511', 132 | fill_normal=color[2], 133 | foreground=color[2], 134 | background=color[0], 135 | percentage_critical=0.2, 136 | percentage_low=0.4, 137 | text_charging=' ({percentage:.0f}%) {ttf} to ', 138 | text_discharging=' ({percentage:.0f}%) {tte} Left', 139 | ), 140 | ## Lock, Logout, Poweroff 141 | widget.TextBox( 142 | background=color[0], 143 | foreground=color[2], 144 | text="", 145 | mouse_callbacks={'Button1': lambda: qtile.function(session_widget)}, 146 | )] 147 | return widgets_list 148 | 149 | def screen1_widgets(): 150 | widgets_screen1=init_widgets_list() 151 | return widgets_screen1 152 | 153 | 154 | def init_screens_bottom(): 155 | return[Screen(bottom=bar.Bar(widgets=screen1_widgets(),size=bar_size,background=transparent,margin=bar_margin))] 156 | 157 | def init_screens_top(): 158 | return[Screen(top=bar.Bar(widgets=screen1_widgets(),size=bar_size,background=transparent,margin=bar_margin))] 159 | 160 | if bar_position == "top": 161 | screens=init_screens_top() 162 | else: 163 | screens=init_screens_bottom() 164 | 165 | widgets_list = init_widgets_list() 166 | widgets_screen1 = screen1_widgets() -------------------------------------------------------------------------------- /dotfiles/.config/qtile/themes/light/no_bar.py: -------------------------------------------------------------------------------- 1 | # _______ _______ ______ _______ __ 2 | #| || _ || __ \| __|| |.-----. 3 | #| - _|| || <|__ || || _ | 4 | #|_______||___|___||___|__||_______||__|| __| 5 | # |__| 6 | # SpectrumOS - Embrace the Chromatic Symphony! 7 | # By: gibranlp 8 | # MIT licence 9 | from functions import * 10 | 11 | # Theme 12 | ## Screens 13 | 14 | screens = [ 15 | Screen( 16 | ), 17 | ] 18 | -------------------------------------------------------------------------------- /dotfiles/.config/qtile/update: -------------------------------------------------------------------------------- 1 | 2.11 -------------------------------------------------------------------------------- /dotfiles/.config/qtile/variables: -------------------------------------------------------------------------------- 1 | 2.10 2 | Spectrum 3 | wal 4 | e45a0f07f0c675b273ef8636663941db 5 | -c 6 | /.config/qtile/themes/dark 7 | bottom 8 | Dark 9 | 10 |  11 | 0 12 | -------------------------------------------------------------------------------- /dotfiles/.config/rofi/QARSlp.rasi: -------------------------------------------------------------------------------- 1 | * {{ 2 | color1: {color1}; 3 | color2: {color2}; 4 | color3: {color3}; 5 | color4: {color4}; 6 | color5: {color5}; 7 | color6: {color6}; 8 | color7: {color7}; 9 | color8: {color8}; 10 | active: {color2}; 11 | urgent: #ffcc00; 12 | active-background: {color2}; 13 | active-foreground: {color6}; 14 | normal-background: @background; 15 | normal-foreground: @foreground; 16 | urgent-background: {color1}; 17 | urgent-foreground: @foreground; 18 | 19 | alternate-active-background: {color4}; 20 | alternate-active-foreground: {color5}; 21 | alternate-normal-background: @background; 22 | alternate-normal-foreground: @foreground; 23 | alternate-urgent-background: @background; 24 | alternate-urgent-foreground: @foreground; 25 | 26 | selected-active-background: {color1}; 27 | selected-active-foreground: @foreground; 28 | selected-normal-background: {color2}; 29 | selected-normal-foreground: @foreground; 30 | selected-urgent-background: {color3}; 31 | selected-urgent-foreground: @foreground; 32 | 33 | background-color: @background; 34 | background: {background}; 35 | background-alt: {background}; 36 | foreground: {foreground}; 37 | border-color: @background; 38 | }} 39 | -------------------------------------------------------------------------------- /dotfiles/.config/rofi/bluetooth.rasi: -------------------------------------------------------------------------------- 1 | 2 | /*****----- Configuration -----*****/ 3 | configuration { 4 | modi: "combi"; 5 | 6 | } 7 | 8 | /*****----- Global Properties -----*****/ 9 | @import "~/.cache/wal/QARSlp.rasi" 10 | * { 11 | font: "Fira Code Medium 13"; 12 | } 13 | 14 | /*****----- Main Window -----*****/ 15 | window { 16 | /* properties for window widget */ 17 | transparency: "real"; 18 | location: center; 19 | anchor: center; 20 | fullscreen: false; 21 | width: 650px; 22 | height: 680px; 23 | x-offset: 0px; 24 | y-offset: 0px; 25 | 26 | /* properties for all widgets */ 27 | enabled: true; 28 | border-radius: 10px; 29 | cursor: "default"; 30 | background-color: @background; 31 | padding: 2px; 32 | } 33 | 34 | /*****----- Main Box -----*****/ 35 | mainbox { 36 | enabled: true; 37 | spacing: 0px; 38 | background-color: transparent; 39 | orientation: vertical; 40 | children: [ "inputbar", "listbox" ]; 41 | } 42 | 43 | listbox { 44 | spacing: 20px; 45 | padding: 5px; 46 | background-color: transparent; 47 | orientation: vertical; 48 | children: [ "message", "listview" ]; 49 | } 50 | 51 | /*****----- Inputbar -----*****/ 52 | inputbar { 53 | enabled: true; 54 | spacing: 5px; 55 | padding: 70px 10px; 56 | background-color: transparent; 57 | background-image: url("/usr/local/backgrounds/background.png", width); 58 | text-color: @color1; 59 | orientation: horizontal; 60 | children: ["entry"]; 61 | border-radius: 10px 10px 0px 0px; 62 | 63 | } 64 | 65 | entry { 66 | enabled: true; 67 | expand: false; 68 | width: 350px; 69 | padding: 12px 16px; 70 | border-radius: 5px; 71 | background-color: @background; 72 | text-color: inherit; 73 | cursor: text; 74 | placeholder-color: inherit; 75 | } 76 | 77 | 78 | 79 | /*****----- Listview -----*****/ 80 | listview { 81 | enabled: true; 82 | columns: 1; 83 | lines: 10; 84 | cycle: true; 85 | dynamic: true; 86 | scrollbar: false; 87 | layout: vertical; 88 | reverse: false; 89 | fixed-height: true; 90 | fixed-columns: true; 91 | 92 | spacing: 20px; 93 | background-color: transparent; 94 | text-color: @foreground; 95 | cursor: "default"; 96 | 97 | } 98 | 99 | /*****----- Elements -----*****/ 100 | element { 101 | enabled: true; 102 | spacing: 10px; 103 | padding: 10px; 104 | border-radius: 5px; 105 | background-color: transparent; 106 | text-color: @foreground; 107 | cursor: pointer; 108 | orientation: vertical; 109 | } 110 | element normal.normal { 111 | background-color: inherit; 112 | text-color: inherit; 113 | } 114 | element normal.urgent { 115 | background-color: @color5; 116 | text-color: @foreground; 117 | } 118 | element normal.active { 119 | background-color: @color1; 120 | text-color: @foreground; 121 | } 122 | element selected.normal { 123 | background-color: @color3; 124 | text-color: @background; 125 | } 126 | element selected.urgent { 127 | background-color: @color5; 128 | text-color: @foreground; 129 | } 130 | element selected.active { 131 | background-color: @color5; 132 | text-color: @foreground; 133 | } 134 | 135 | element-text { 136 | background-color: transparent; 137 | text-color: inherit; 138 | cursor: inherit; 139 | vertical-align: 0.5; 140 | horizontal-align: 0.5; 141 | } 142 | 143 | /*****----- Message -----*****/ 144 | message { 145 | background-color: transparent; 146 | } 147 | textbox { 148 | padding: 12px; 149 | border-radius: 5px; 150 | background-color: @background; 151 | text-color: @foreground; 152 | vertical-align: 0.5; 153 | horizontal-align: 0.5; 154 | } 155 | error-message { 156 | padding: 12px; 157 | border-radius: 0px; 158 | background-color: @background; 159 | text-color: @foreground; 160 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/calculator.rasi: -------------------------------------------------------------------------------- 1 | 2 | /*****----- Configuration -----*****/ 3 | configuration { 4 | modi: "combi"; 5 | 6 | } 7 | 8 | /*****----- Global Properties -----*****/ 9 | @import "~/.cache/wal/QARSlp.rasi" 10 | * { 11 | font: "Fira Code Medium 13"; 12 | } 13 | 14 | /*****----- Main Window -----*****/ 15 | window { 16 | /* properties for window widget */ 17 | transparency: "real"; 18 | location: center; 19 | anchor: center; 20 | fullscreen: false; 21 | width: 650px; 22 | height: 320px; 23 | x-offset: 0px; 24 | y-offset: 0px; 25 | 26 | /* properties for all widgets */ 27 | enabled: true; 28 | border-radius: 10px; 29 | cursor: "default"; 30 | background-color: @background; 31 | padding: 2px; 32 | } 33 | 34 | /*****----- Main Box -----*****/ 35 | mainbox { 36 | enabled: true; 37 | spacing: 0px; 38 | background-color: transparent; 39 | orientation: vertical; 40 | children: [ "inputbar", "listbox" ]; 41 | } 42 | 43 | listbox { 44 | spacing: 20px; 45 | padding: 10px; 46 | background-color: transparent; 47 | orientation: vertical; 48 | children: [ "message", "listview" ]; 49 | } 50 | 51 | /*****----- Inputbar -----*****/ 52 | inputbar { 53 | enabled: true; 54 | spacing: 5px; 55 | padding: 70px 10px; 56 | background-color: transparent; 57 | background-image: url("/usr/local/backgrounds/background.png", width); 58 | text-color: @color1; 59 | orientation: horizontal; 60 | children: ["entry", "prompt"]; 61 | border-radius: 10px 10px 0px 0px; 62 | 63 | } 64 | 65 | prompt { 66 | enabled: true; 67 | expand: false; 68 | width: 300px; 69 | padding: 12px 5px; 70 | border-radius: 5px; 71 | background-color: @background; 72 | text-color: @color2; 73 | cursor: text; 74 | placeholder-color: inherit; 75 | } 76 | 77 | entry { 78 | enabled: true; 79 | expand: false; 80 | width: 300px; 81 | padding: 12px 16px; 82 | border-radius: 5px; 83 | background-color: @background; 84 | text-color: inherit; 85 | cursor: text; 86 | placeholder-color: inherit; 87 | } 88 | 89 | 90 | 91 | /*****----- Listview -----*****/ 92 | listview { 93 | enabled: true; 94 | columns: 1; 95 | lines: 3; 96 | cycle: true; 97 | dynamic: true; 98 | scrollbar: false; 99 | layout: vertical; 100 | reverse: false; 101 | fixed-height: true; 102 | fixed-columns: true; 103 | 104 | spacing: 10px; 105 | background-color: transparent; 106 | text-color: @foreground; 107 | cursor: "default"; 108 | 109 | } 110 | 111 | /*****----- Elements -----*****/ 112 | element { 113 | enabled: true; 114 | spacing: 10px; 115 | padding: 10px; 116 | border-radius: 5px; 117 | background-color: transparent; 118 | text-color: @foreground; 119 | cursor: pointer; 120 | orientation: vertical; 121 | } 122 | element normal.normal { 123 | background-color: inherit; 124 | text-color: inherit; 125 | } 126 | element normal.urgent { 127 | background-color: @color5; 128 | text-color: @foreground; 129 | } 130 | element normal.active { 131 | background-color: @color1; 132 | text-color: @foreground; 133 | } 134 | element selected.normal { 135 | background-color: @color3; 136 | text-color: @background; 137 | } 138 | element selected.urgent { 139 | background-color: @color5; 140 | text-color: @foreground; 141 | } 142 | element selected.active { 143 | background-color: @color5; 144 | text-color: @foreground; 145 | } 146 | 147 | element-text { 148 | background-color: transparent; 149 | text-color: inherit; 150 | cursor: inherit; 151 | vertical-align: 0.5; 152 | horizontal-align: 0.5; 153 | } 154 | 155 | /*****----- Message -----*****/ 156 | message { 157 | background-color: transparent; 158 | } 159 | textbox { 160 | padding: 12px; 161 | border-radius: 5px; 162 | background-color: @background; 163 | text-color: @foreground; 164 | vertical-align: 0.5; 165 | horizontal-align: 0.5; 166 | } 167 | error-message { 168 | padding: 12px; 169 | border-radius: 0px; 170 | background-color: @background; 171 | text-color: @foreground; 172 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/emojis.rasi: -------------------------------------------------------------------------------- 1 | /*****----- Configuration -----*****/ 2 | configuration { 3 | show-icons: false; 4 | } 5 | /*****----- Global Properties -----*****/ 6 | @import "~/.cache/wal/QARSlp.rasi" 7 | * { 8 | font: "Fira Code Medium 13"; 9 | } 10 | 11 | /*****----- Main Window -----*****/ 12 | window { 13 | /* properties for window widget */ 14 | transparency: "real"; 15 | location: west; 16 | anchor: center; 17 | fullscreen: false; 18 | width: 600px; 19 | height: 99.5%; 20 | x-offset: 300px; 21 | y-offset: 0px; 22 | border-radius: 0px 10px 10px 0px; 23 | 24 | /* properties for all widgets */ 25 | enabled: true; 26 | cursor: "default"; 27 | background-color: @background; 28 | padding: 2px; 29 | } 30 | 31 | /*****----- Main Box -----*****/ 32 | mainbox { 33 | enabled: true; 34 | spacing: 0px; 35 | background-color: transparent; 36 | orientation: vertical; 37 | children: [ "inputbar", "listbox" ]; 38 | } 39 | 40 | listbox { 41 | spacing: 20px; 42 | padding: 20px; 43 | background-color: transparent; 44 | orientation: vertical; 45 | children: [ "message", "listview" ]; 46 | } 47 | 48 | /*****----- Inputbar -----*****/ 49 | inputbar { 50 | enabled: true; 51 | spacing: 10px; 52 | padding: 100px 0px; 53 | background-color: transparent; 54 | background-image: url("/usr/local/backgrounds/background.png", width); 55 | text-color: @foreground; 56 | orientation: horizontal; 57 | children: ["prompt", "entry"]; 58 | border-radius: 0px 10px 0px 0px; 59 | horizontal-align: 0.5; 60 | 61 | } 62 | 63 | prompt { 64 | padding: 12px 16px; 65 | border-radius: 0px 5px 5px 0px; 66 | background-color: @background; 67 | text-color: @color1; 68 | horizontal-align: 0.5; 69 | text: " Emojis: "; 70 | } 71 | 72 | entry { 73 | padding: 12px 16px; 74 | border-radius: 5px 0px 0px 5px; 75 | background-color: @color1; 76 | text-color: @background; 77 | horizontal-align: 0; 78 | } 79 | 80 | 81 | /*****----- Listview -----*****/ 82 | listview { 83 | enabled: true; 84 | columns: 5; 85 | lines: 0; 86 | cycle: true; 87 | dynamic: true; 88 | scrollbar: false; 89 | layout: vertical; 90 | reverse: false; 91 | fixed-height: true; 92 | fixed-columns: true; 93 | spacing: 0px; 94 | background-color: transparent; 95 | text-color: @foreground; 96 | cursor: "default"; 97 | 98 | } 99 | 100 | /*****----- Elements -----*****/ 101 | element { 102 | enabled: true; 103 | spacing: 0px; 104 | padding: 0px; 105 | border-radius: 5px; 106 | background-color: transparent; 107 | text-color: @foreground; 108 | cursor: pointer; 109 | 110 | } 111 | element normal.normal { 112 | background-color: inherit; 113 | text-color: inherit; 114 | } 115 | element normal.urgent { 116 | background-color: @color5; 117 | text-color: @foreground; 118 | } 119 | element normal.active { 120 | background-color: @color1; 121 | text-color: @foreground; 122 | } 123 | element selected.normal { 124 | background-color: @color3; 125 | text-color: @background; 126 | } 127 | element selected.urgent { 128 | background-color: @color5; 129 | text-color: @foreground; 130 | } 131 | element selected.active { 132 | background-color: @color5; 133 | text-color: @foreground; 134 | } 135 | element-icon { 136 | background-color: transparent; 137 | text-color: inherit; 138 | size: 30px; 139 | cursor: inherit; 140 | } 141 | element-text { 142 | background-color: transparent; 143 | text-color: inherit; 144 | cursor: inherit; 145 | vertical-align: 0.5; 146 | horizontal-align: 0.5; 147 | font: "Noto Color Emoji 25"; 148 | } 149 | 150 | /*****----- Message -----*****/ 151 | message { 152 | background-color: transparent; 153 | } 154 | textbox { 155 | padding: 12px; 156 | border-radius: 5px; 157 | background-color: @background; 158 | text-color: @foreground; 159 | vertical-align: 0.5; 160 | horizontal-align: 0.0; 161 | } 162 | error-message { 163 | padding: 12px; 164 | border-radius: 0px; 165 | background-color: @background; 166 | text-color: @foreground; 167 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/launcher.rasi: -------------------------------------------------------------------------------- 1 | 2 | /*****----- Configuration -----*****/ 3 | configuration { 4 | modi: "drun,filebrowser"; 5 | show-icons: true; 6 | display-drun: ""; 7 | display-run: ""; 8 | display-filebrowser: ""; 9 | drun-display-format: "{name}"; 10 | window-format: "{w} · {c} · {t}"; 11 | } 12 | 13 | /*****----- Global Properties -----*****/ 14 | @import "~/.cache/wal/QARSlp.rasi" 15 | * { 16 | font: "Fira Code Medium 13"; 17 | } 18 | 19 | /*****----- Main Window -----*****/ 20 | window { 21 | /* properties for window widget */ 22 | transparency: "real"; 23 | location: center; 24 | anchor: center; 25 | fullscreen: false; 26 | width: 650px; 27 | height: 570px; 28 | x-offset: 0px; 29 | y-offset: 0px; 30 | border-radius: 10px; 31 | /* properties for all widgets */ 32 | enabled: true; 33 | cursor: "default"; 34 | background-color: @background; 35 | padding: 2px; 36 | } 37 | 38 | /*****----- Main Box -----*****/ 39 | mainbox { 40 | enabled: true; 41 | spacing: 0px; 42 | background-color: transparent; 43 | orientation: vertical; 44 | children: [ "inputbar", "listbox" ]; 45 | } 46 | 47 | listbox { 48 | spacing: 20px; 49 | padding: 5px; 50 | background-color: transparent; 51 | orientation: vertical; 52 | children: [ "message", "listview" ]; 53 | } 54 | 55 | /*****----- Inputbar -----*****/ 56 | inputbar { 57 | background-image: url("/usr/local/backgrounds/background.png", width); 58 | enabled: true; 59 | spacing: 10px; 60 | padding: 100px 60px; 61 | background-color: transparent; 62 | text-color: @color1; 63 | orientation: horizontal; 64 | children: [ "textbox-prompt-colon", "entry", "mode-switcher" ]; 65 | border-radius: 10px 10px 0px 0px; 66 | 67 | } 68 | textbox-prompt-colon{ 69 | enabled: true; 70 | expand: false; 71 | str: ""; 72 | padding: 13px 15px; 73 | border-radius: 5px; 74 | background-color: @background; 75 | text-color: @color3; 76 | } 77 | entry { 78 | enabled: true; 79 | expand: false; 80 | width: 350px; 81 | padding: 12px 16px; 82 | border-radius: 5px; 83 | background-color: @background; 84 | text-color: inherit; 85 | cursor: text; 86 | placeholder: ""; 87 | placeholder-color: inherit; 88 | } 89 | 90 | /*****----- Mode Switcher -----*****/ 91 | mode-switcher{ 92 | enabled: true; 93 | spacing: 10px; 94 | background-color: transparent; 95 | text-color: @foreground; 96 | } 97 | button { 98 | width: 45px; 99 | padding: 12px; 100 | border-radius: 5px; 101 | background-color: @background; 102 | text-color: inherit; 103 | cursor: pointer; 104 | } 105 | button selected { 106 | background-color: @color3; 107 | text-color: @foreground; 108 | } 109 | 110 | /*****----- Listview -----*****/ 111 | listview { 112 | enabled: true; 113 | columns: 3; 114 | lines: 3; 115 | cycle: true; 116 | dynamic: true; 117 | scrollbar: false; 118 | layout: vertical; 119 | reverse: false; 120 | fixed-height: true; 121 | fixed-columns: true; 122 | spacing: 10px; 123 | background-color: transparent; 124 | text-color: @foreground; 125 | cursor: "default"; 126 | 127 | } 128 | 129 | /*****----- Elements -----*****/ 130 | element { 131 | enabled: true; 132 | spacing: 10px; 133 | padding: 12px; 134 | border-radius: 5px; 135 | background-color: transparent; 136 | text-color: @foreground; 137 | cursor: pointer; 138 | orientation: vertical; 139 | } 140 | element normal.normal { 141 | background-color: inherit; 142 | text-color: inherit; 143 | } 144 | element normal.urgent { 145 | background-color: @color5; 146 | text-color: @foreground; 147 | } 148 | element normal.active { 149 | background-color: @color1; 150 | text-color: @foreground; 151 | } 152 | element selected.normal { 153 | background-color: @color1; 154 | text-color: @background; 155 | } 156 | element selected.urgent { 157 | background-color: @color5; 158 | text-color: @foreground; 159 | } 160 | element selected.active { 161 | background-color: @color5; 162 | text-color: @foreground; 163 | } 164 | element-icon { 165 | background-color: transparent; 166 | text-color: inherit; 167 | size: 40px; 168 | cursor: inherit; 169 | } 170 | element-text { 171 | background-color: transparent; 172 | text-color: inherit; 173 | cursor: inherit; 174 | vertical-align: 0.5; 175 | horizontal-align: 0.5; 176 | } 177 | 178 | /*****----- Message -----*****/ 179 | message { 180 | background-color: transparent; 181 | } 182 | textbox { 183 | padding: 12px; 184 | border-radius: 5px; 185 | background-color: @background; 186 | text-color: @foreground; 187 | vertical-align: 0.5; 188 | horizontal-align: 0.5; 189 | } 190 | error-message { 191 | padding: 12px; 192 | border-radius: 0px; 193 | background-color: @background; 194 | text-color: @foreground; 195 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/left.rasi: -------------------------------------------------------------------------------- 1 | /*****----- Global Properties -----*****/ 2 | @import "~/.cache/wal/QARSlp.rasi" 3 | * { 4 | font: "Fira Code Medium 13"; 5 | } 6 | 7 | /*****----- Main Window -----*****/ 8 | window { 9 | /* properties for window widget */ 10 | transparency: "real"; 11 | location: west; 12 | anchor: center; 13 | fullscreen: false; 14 | width: 450px; 15 | height: 99.5%; 16 | x-offset: 225px; 17 | y-offset: 0px; 18 | border-radius: 0px 10px 10px 0px; 19 | 20 | /* properties for all widgets */ 21 | enabled: true; 22 | cursor: "default"; 23 | background-color: @background; 24 | padding: 2px; 25 | } 26 | 27 | /*****----- Main Box -----*****/ 28 | mainbox { 29 | enabled: true; 30 | spacing: 0px; 31 | background-color: transparent; 32 | orientation: vertical; 33 | children: [ "inputbar", "listbox" ]; 34 | } 35 | 36 | listbox { 37 | spacing: 20px; 38 | padding: 20px; 39 | background-color: transparent; 40 | orientation: vertical; 41 | children: [ "message", "listview" ]; 42 | } 43 | 44 | /*****----- Inputbar -----*****/ 45 | inputbar { 46 | enabled: true; 47 | spacing: 10px; 48 | padding: 100px 0px; 49 | background-color: transparent; 50 | background-image: url("/usr/local/backgrounds/background.png", width); 51 | text-color: @foreground; 52 | orientation: horizontal; 53 | children: ["prompt", "entry"]; 54 | border-radius: 0px 10px 0px 0px; 55 | horizontal-align: 0.5; 56 | 57 | } 58 | 59 | prompt { 60 | padding: 12px 16px; 61 | border-radius: 0px 5px 5px 0px; 62 | background-color: @background; 63 | text-color: @color1; 64 | horizontal-align: 0.5; 65 | } 66 | 67 | entry { 68 | padding: 12px 16px; 69 | border-radius: 5px 0px 0px 5px; 70 | background-color: @color1; 71 | text-color: @background; 72 | horizontal-align: 0; 73 | } 74 | 75 | 76 | /*****----- Listview -----*****/ 77 | listview { 78 | enabled: true; 79 | columns: 1; 80 | lines: 4; 81 | cycle: true; 82 | dynamic: true; 83 | scrollbar: false; 84 | layout: vertical; 85 | reverse: false; 86 | fixed-height: true; 87 | fixed-columns: true; 88 | 89 | spacing: 10px; 90 | background-color: transparent; 91 | text-color: @foreground; 92 | cursor: "default"; 93 | 94 | } 95 | 96 | /*****----- Elements -----*****/ 97 | element { 98 | enabled: true; 99 | spacing: 10px; 100 | padding: 12px; 101 | border-radius: 5px; 102 | background-color: transparent; 103 | text-color: @foreground; 104 | cursor: pointer; 105 | } 106 | element normal.normal { 107 | background-color: inherit; 108 | text-color: inherit; 109 | } 110 | element normal.urgent { 111 | background-color: @color5; 112 | text-color: @foreground; 113 | } 114 | element normal.active { 115 | background-color: @color1; 116 | text-color: @foreground; 117 | } 118 | element selected.normal { 119 | background-color: @color3; 120 | text-color: @background; 121 | } 122 | element selected.urgent { 123 | background-color: @color5; 124 | text-color: @foreground; 125 | } 126 | element selected.active { 127 | background-color: @color5; 128 | text-color: @foreground; 129 | } 130 | element-icon { 131 | background-color: transparent; 132 | text-color: inherit; 133 | size: 40px; 134 | cursor: inherit; 135 | } 136 | element-text { 137 | background-color: transparent; 138 | text-color: inherit; 139 | cursor: inherit; 140 | vertical-align: 0.5; 141 | horizontal-align: 0; 142 | } 143 | 144 | /*****----- Message -----*****/ 145 | message { 146 | background-color: transparent; 147 | } 148 | textbox { 149 | padding: 12px; 150 | border-radius: 5px; 151 | background-color: @background; 152 | text-color: @foreground; 153 | vertical-align: 0.5; 154 | horizontal-align: 0.0; 155 | } 156 | error-message { 157 | padding: 12px; 158 | border-radius: 0px; 159 | background-color: @background; 160 | text-color: @foreground; 161 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/network.rasi: -------------------------------------------------------------------------------- 1 | /*****----- Global Properties -----*****/ 2 | @import "~/.cache/wal/QARSlp.rasi" 3 | * { 4 | font: "Fira Code Medium 13"; 5 | } 6 | 7 | /*****----- Main Window -----*****/ 8 | window { 9 | /* properties for window widget */ 10 | transparency: "real"; 11 | location: center; 12 | anchor: center; 13 | fullscreen: false; 14 | width: 600px; 15 | height: 510px; 16 | x-offset: 0px; 17 | y-offset: 0px; 18 | 19 | /* properties for all widgets */ 20 | enabled: true; 21 | border-radius: 10px; 22 | cursor: "default"; 23 | background-color: @background; 24 | padding: 2px; 25 | } 26 | 27 | /*****----- Main Box -----*****/ 28 | mainbox { 29 | enabled: true; 30 | spacing: 0px; 31 | background-color: transparent; 32 | orientation: vertical; 33 | children: [ "inputbar", "listbox" ]; 34 | } 35 | 36 | listbox { 37 | spacing: 20px; 38 | padding: 20px; 39 | background-color: transparent; 40 | orientation: vertical; 41 | children: [ "message", "listview" ]; 42 | } 43 | 44 | /*****----- Inputbar -----*****/ 45 | inputbar { 46 | enabled: true; 47 | spacing: 10px; 48 | padding: 100px 0px; 49 | background-color: transparent; 50 | background-image: url("/usr/local/backgrounds/background.png", width); 51 | text-color: @foreground; 52 | orientation: horizontal; 53 | children: ["prompt"]; 54 | border-radius: 10px 10px 0px 0px; 55 | horizontal-align: 0.5; 56 | 57 | } 58 | 59 | prompt { 60 | 61 | padding: 12px 16px; border-radius: 0px 5px 5px 0px; 62 | background-color: @background; 63 | text-color: @color1; 64 | horizontal-align: 0.5; 65 | 66 | } 67 | 68 | 69 | /*****----- Listview -----*****/ 70 | listview { 71 | enabled: true; 72 | columns: 1; 73 | lines: 4; 74 | cycle: true; 75 | dynamic: true; 76 | scrollbar: false; 77 | layout: vertical; 78 | reverse: false; 79 | fixed-height: true; 80 | fixed-columns: true; 81 | 82 | spacing: 10px; 83 | background-color: transparent; 84 | text-color: @foreground; 85 | cursor: "default"; 86 | 87 | } 88 | 89 | /*****----- Elements -----*****/ 90 | element { 91 | enabled: true; 92 | spacing: 10px; 93 | padding: 12px; 94 | border-radius: 5px; 95 | background-color: transparent; 96 | text-color: @foreground; 97 | cursor: pointer; 98 | } 99 | element normal.normal { 100 | background-color: inherit; 101 | text-color: inherit; 102 | } 103 | element normal.urgent { 104 | background-color: @color5; 105 | text-color: @foreground; 106 | } 107 | element normal.active { 108 | background-color: @color1; 109 | text-color: @foreground; 110 | } 111 | element selected.normal { 112 | background-color: @color3; 113 | text-color: @background; 114 | } 115 | element selected.urgent { 116 | background-color: @color5; 117 | text-color: @foreground; 118 | } 119 | element selected.active { 120 | background-color: @color5; 121 | text-color: @foreground; 122 | } 123 | element-icon { 124 | background-color: transparent; 125 | text-color: inherit; 126 | size: 40px; 127 | cursor: inherit; 128 | } 129 | element-text { 130 | background-color: transparent; 131 | text-color: inherit; 132 | cursor: inherit; 133 | vertical-align: 0.5; 134 | horizontal-align: 0.5; 135 | } 136 | 137 | /*****----- Message -----*****/ 138 | message { 139 | background-color: transparent; 140 | } 141 | textbox { 142 | padding: 12px; 143 | border-radius: 5px; 144 | background-color: @background; 145 | text-color: @foreground; 146 | vertical-align: 0.5; 147 | horizontal-align: 0.0; 148 | } 149 | error-message { 150 | padding: 12px; 151 | border-radius: 0px; 152 | background-color: @background; 153 | text-color: @foreground; 154 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/network2.rasi: -------------------------------------------------------------------------------- 1 | /*****----- Global Properties -----*****/ 2 | @import "~/.cache/wal/QARSlp.rasi" 3 | * { 4 | font: "Fira Code Medium 13"; 5 | } 6 | 7 | /*****----- Main Window -----*****/ 8 | window { 9 | /* properties for window widget */ 10 | transparency: "real"; 11 | location: center; 12 | anchor: center; 13 | fullscreen: false; 14 | width: 600px; 15 | height: 700px; 16 | x-offset: 0px; 17 | y-offset: 0px; 18 | 19 | /* properties for all widgets */ 20 | enabled: true; 21 | border-radius: 10px; 22 | cursor: "default"; 23 | background-color: @background; 24 | padding: 2px; 25 | } 26 | 27 | /*****----- Main Box -----*****/ 28 | mainbox { 29 | enabled: true; 30 | spacing: 0px; 31 | background-color: transparent; 32 | orientation: vertical; 33 | children: [ "inputbar", "listbox" ]; 34 | } 35 | 36 | listbox { 37 | spacing: 20px; 38 | padding: 20px; 39 | background-color: transparent; 40 | orientation: vertical; 41 | children: [ "message", "listview" ]; 42 | } 43 | 44 | /*****----- Inputbar -----*****/ 45 | inputbar { 46 | enabled: true; 47 | spacing: 10px; 48 | padding: 100px 0px; 49 | background-color: transparent; 50 | background-image: url("/usr/local/backgrounds/background.png", width); 51 | text-color: @foreground; 52 | orientation: horizontal; 53 | children: ["prompt", "entry"]; 54 | border-radius: 10px 10px 0px 0px; 55 | horizontal-align: 0.5; 56 | 57 | } 58 | 59 | entry { 60 | padding: 12px 16px; 61 | border-radius: 5px 0px 0px 5px; 62 | background-color: @color1; 63 | text-color: @background; 64 | horizontal-align: 0; 65 | } 66 | 67 | prompt { 68 | padding: 12px 16px; 69 | border-radius: 0px 5px 5px 0px; 70 | background-color: @background; 71 | text-color: @color1; 72 | horizontal-align: 0.5; 73 | } 74 | 75 | 76 | /*****----- Listview -----*****/ 77 | listview { 78 | enabled: true; 79 | columns: 1; 80 | lines: 4; 81 | cycle: true; 82 | dynamic: true; 83 | scrollbar: false; 84 | layout: vertical; 85 | reverse: false; 86 | fixed-height: true; 87 | fixed-columns: true; 88 | 89 | spacing: 10px; 90 | background-color: transparent; 91 | text-color: @foreground; 92 | cursor: "default"; 93 | 94 | } 95 | 96 | /*****----- Elements -----*****/ 97 | element { 98 | enabled: true; 99 | spacing: 10px; 100 | padding: 12px; 101 | border-radius: 5px; 102 | background-color: @color1; 103 | text-color: @background; 104 | cursor: pointer; 105 | } 106 | element normal.normal { 107 | background-color: inherit; 108 | text-color: inherit; 109 | } 110 | element normal.urgent { 111 | background-color: @color5; 112 | text-color: @background; 113 | } 114 | element normal.active { 115 | background-color: @color2; 116 | text-color: @background; 117 | } 118 | element selected.normal { 119 | background-color: @color3; 120 | text-color: @background; 121 | } 122 | element selected.urgent { 123 | background-color: @color5; 124 | text-color: @background; 125 | } 126 | element selected.active { 127 | background-color: @color4; 128 | text-color: @background; 129 | } 130 | element-icon { 131 | background-color: transparent; 132 | text-color: inherit; 133 | size: 40px; 134 | cursor: inherit; 135 | } 136 | element-text { 137 | background-color: transparent; 138 | text-color: inherit; 139 | cursor: inherit; 140 | vertical-align: 0.5; 141 | horizontal-align: 0.5; 142 | } 143 | 144 | /*****----- Message -----*****/ 145 | message { 146 | background-color: transparent; 147 | } 148 | textbox { 149 | padding: 12px; 150 | border-radius: 5px; 151 | background-color: @background; 152 | text-color: @foreground; 153 | vertical-align: 0.5; 154 | horizontal-align: 0.0; 155 | } 156 | error-message { 157 | padding: 12px; 158 | border-radius: 0px; 159 | background-color: @background; 160 | text-color: @foreground; 161 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/sel_wal.rasi: -------------------------------------------------------------------------------- 1 | /*****----- Configuration -----*****/ 2 | configuration { 3 | show-icons: true; 4 | display-file-browser-extended: "Select "; 5 | } 6 | 7 | /*****----- Global Properties -----*****/ 8 | @import "~/.cache/wal/QARSlp.rasi" 9 | * { 10 | font: "Fira Code Medium 13"; 11 | } 12 | 13 | /*****----- Main Window -----*****/ 14 | window { 15 | /* properties for window widget */ 16 | transparency: "real"; 17 | location: west; 18 | anchor: center; 19 | fullscreen: false; 20 | width: 700px; 21 | height: 99.5%; 22 | x-offset: 350px; 23 | y-offset: 0px; 24 | border-radius: 0px 10px 10px 0px; 25 | 26 | /* properties for all widgets */ 27 | enabled: true; 28 | cursor: "default"; 29 | background-color: @background; 30 | padding: 2px; 31 | } 32 | 33 | /*****----- Main Box -----*****/ 34 | mainbox { 35 | enabled: true; 36 | spacing: 0px; 37 | background-color: transparent; 38 | orientation: vertical; 39 | children: [ "inputbar", "listbox" ]; 40 | } 41 | 42 | listbox { 43 | spacing: 0px; 44 | padding: 0px; 45 | background-color: transparent; 46 | orientation: vertical; 47 | children: [ "message", "listview" ]; 48 | } 49 | 50 | /*****----- Inputbar -----*****/ 51 | inputbar { 52 | enabled: true; 53 | spacing: 10px; 54 | padding: 100px 0px; 55 | background-color: transparent; 56 | background-image: url("/usr/local/backgrounds/background.png", width); 57 | text-color: @foreground; 58 | orientation: horizontal; 59 | children: ["prompt", "entry"]; 60 | border-radius: 0px 10px 0px 0px; 61 | horizontal-align: 0.5; 62 | 63 | } 64 | 65 | prompt { 66 | padding: 12px 16px; 67 | border-radius: 0px 5px 5px 0px; 68 | background-color: @background; 69 | text-color: @color1; 70 | horizontal-align: 0.5; 71 | } 72 | 73 | entry { 74 | padding: 12px 16px; 75 | border-radius: 5px 0px 0px 5px; 76 | background-color: @color1; 77 | text-color: @background; 78 | horizontal-align: 0; 79 | } 80 | 81 | 82 | /*****----- Listview -----*****/ 83 | listview { 84 | enabled: true; 85 | columns: 2; 86 | lines: 0; 87 | cycle: true; 88 | dynamic: true; 89 | scrollbar: false; 90 | layout: vertical; 91 | reverse: false; 92 | fixed-height: true; 93 | fixed-columns: true; 94 | spacing: -15px; 95 | background-color: transparent; 96 | text-color: @foreground; 97 | cursor: "default"; 98 | 99 | } 100 | 101 | /*****----- Elements -----*****/ 102 | element { 103 | enabled: true; 104 | spacing: 0px; 105 | padding: 0px; 106 | border-radius: 5px; 107 | background-color: transparent; 108 | text-color: @foreground; 109 | cursor: pointer; 110 | orientation: vertical; 111 | } 112 | element normal.normal { 113 | background-color: inherit; 114 | text-color: inherit; 115 | } 116 | element normal.urgent { 117 | background-color: @color5; 118 | text-color: @foreground; 119 | } 120 | element normal.active { 121 | background-color: @color1; 122 | text-color: @foreground; 123 | } 124 | element selected.normal { 125 | background-color: @color1; 126 | text-color: @background; 127 | } 128 | element selected.urgent { 129 | background-color: @color5; 130 | text-color: @foreground; 131 | } 132 | element selected.active { 133 | background-color: @color5; 134 | text-color: @foreground; 135 | } 136 | element-icon { 137 | background-color: transparent; 138 | text-color: inherit; 139 | size: 250px; 140 | cursor: inherit; 141 | } 142 | element-text { 143 | background-color: transparent; 144 | text-color: inherit; 145 | cursor: inherit; 146 | vertical-align: 0.5; 147 | horizontal-align: 0.5; 148 | } 149 | 150 | /*****----- Message -----*****/ 151 | message { 152 | background-color: transparent; 153 | } 154 | textbox { 155 | padding: 5px; 156 | border-radius: 5px; 157 | background-color: @background; 158 | text-color: @foreground; 159 | vertical-align: 0.5; 160 | horizontal-align: 0.0; 161 | } 162 | error-message { 163 | padding: 12px; 164 | border-radius: 0px; 165 | background-color: @background; 166 | text-color: @foreground; 167 | } -------------------------------------------------------------------------------- /dotfiles/.config/rofi/shortcuts.rasi: -------------------------------------------------------------------------------- 1 | /*****----- Global Properties -----*****/ 2 | @import "~/.cache/wal/QARSlp.rasi" 3 | * { 4 | font: "Fira Code Medium 13"; 5 | } 6 | 7 | /*****----- Main Window -----*****/ 8 | window { 9 | /* properties for window widget */ 10 | transparency: "real"; 11 | location: west; 12 | anchor: center; 13 | fullscreen: false; 14 | width: 600px; 15 | height: 99.5%; 16 | x-offset: 300px; 17 | y-offset: 0px; 18 | border-radius: 0px 10px 10px 0px; 19 | 20 | /* properties for all widgets */ 21 | enabled: true; 22 | cursor: "default"; 23 | background-color: @background; 24 | padding: 2px; 25 | } 26 | 27 | /*****----- Main Box -----*****/ 28 | mainbox { 29 | enabled: true; 30 | spacing: 0px; 31 | background-color: transparent; 32 | orientation: vertical; 33 | children: [ "inputbar", "listbox" ]; 34 | } 35 | 36 | listbox { 37 | spacing: 20px; 38 | padding: 20px; 39 | background-color: transparent; 40 | orientation: vertical; 41 | children: [ "message", "listview" ]; 42 | } 43 | 44 | /*****----- Inputbar -----*****/ 45 | inputbar { 46 | enabled: true; 47 | spacing: 10px; 48 | padding: 100px 0px; 49 | background-color: transparent; 50 | background-image: url("/usr/local/backgrounds/background.png", width); 51 | text-color: @foreground; 52 | orientation: horizontal; 53 | children: ["prompt", "entry"]; 54 | border-radius: 0px 10px 0px 0px; 55 | horizontal-align: 0.5; 56 | 57 | } 58 | 59 | prompt { 60 | padding: 12px 16px; 61 | border-radius: 0px 5px 5px 0px; 62 | background-color: @background; 63 | text-color: inherit; 64 | horizontal-align: 0.5; 65 | } 66 | 67 | entry { 68 | padding: 12px 16px; 69 | border-radius: 5px 0px 0px 5px; 70 | background-color: @color1; 71 | text-color: @background; 72 | horizontal-align: 0; 73 | } 74 | 75 | 76 | /*****----- Listview -----*****/ 77 | listview { 78 | enabled: true; 79 | columns: 1; 80 | lines: 4; 81 | cycle: true; 82 | dynamic: true; 83 | scrollbar: false; 84 | layout: vertical; 85 | reverse: false; 86 | fixed-height: true; 87 | fixed-columns: true; 88 | 89 | spacing: 10px; 90 | background-color: transparent; 91 | text-color: @foreground; 92 | cursor: "default"; 93 | 94 | } 95 | 96 | /*****----- Elements -----*****/ 97 | element { 98 | enabled: true; 99 | spacing: 10px; 100 | padding: 12px; 101 | border-radius: 5px; 102 | background-color: transparent; 103 | text-color: @foreground; 104 | cursor: pointer; 105 | } 106 | element normal.normal { 107 | background-color: inherit; 108 | text-color: inherit; 109 | } 110 | element normal.urgent { 111 | background-color: @color5; 112 | text-color: @foreground; 113 | } 114 | element normal.active { 115 | background-color: @color1; 116 | text-color: @foreground; 117 | } 118 | element selected.normal { 119 | background-color: @color3; 120 | text-color: @background; 121 | } 122 | element selected.urgent { 123 | background-color: @color5; 124 | text-color: @foreground; 125 | } 126 | element selected.active { 127 | background-color: @color5; 128 | text-color: @foreground; 129 | } 130 | element-icon { 131 | background-color: transparent; 132 | text-color: inherit; 133 | size: 40px; 134 | cursor: inherit; 135 | } 136 | element-text { 137 | background-color: transparent; 138 | text-color: inherit; 139 | cursor: inherit; 140 | vertical-align: 0.5; 141 | horizontal-align: 0.5; 142 | } 143 | 144 | /*****----- Message -----*****/ 145 | message { 146 | background-color: transparent; 147 | } 148 | textbox { 149 | padding: 12px; 150 | border-radius: 5px; 151 | background-color: @background; 152 | text-color: @foreground; 153 | vertical-align: 0.5; 154 | horizontal-align: 0.0; 155 | } 156 | error-message { 157 | padding: 12px; 158 | border-radius: 0px; 159 | background-color: @background; 160 | text-color: @foreground; 161 | } -------------------------------------------------------------------------------- /dotfiles/.fonts/FiraCode-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/FiraCode-Bold.ttf -------------------------------------------------------------------------------- /dotfiles/.fonts/FiraCode-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/FiraCode-Light.ttf -------------------------------------------------------------------------------- /dotfiles/.fonts/FiraCode-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/FiraCode-Medium.ttf -------------------------------------------------------------------------------- /dotfiles/.fonts/FiraCode-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/FiraCode-Regular.ttf -------------------------------------------------------------------------------- /dotfiles/.fonts/FiraCode-Retina.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/FiraCode-Retina.ttf -------------------------------------------------------------------------------- /dotfiles/.fonts/Font Awesome 6 Brands-Regular-400.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Font Awesome 6 Brands-Regular-400.otf -------------------------------------------------------------------------------- /dotfiles/.fonts/Font Awesome 6 Duotone-Solid-900.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Font Awesome 6 Duotone-Solid-900.otf -------------------------------------------------------------------------------- /dotfiles/.fonts/Font Awesome 6 Pro-Light-300.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Font Awesome 6 Pro-Light-300.otf -------------------------------------------------------------------------------- /dotfiles/.fonts/Font Awesome 6 Pro-Regular-400.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Font Awesome 6 Pro-Regular-400.otf -------------------------------------------------------------------------------- /dotfiles/.fonts/Font Awesome 6 Pro-Solid-900.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Font Awesome 6 Pro-Solid-900.otf -------------------------------------------------------------------------------- /dotfiles/.fonts/Font Awesome 6 Pro-Thin-100.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Font Awesome 6 Pro-Thin-100.otf -------------------------------------------------------------------------------- /dotfiles/.fonts/Unknown Galaxy.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/dotfiles/.fonts/Unknown Galaxy.ttf -------------------------------------------------------------------------------- /dotfiles/.local/bin/alwaystart: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | unclutter -idle 1 & 12 | rm -rf ~/.config/wpg/schemes/* & 13 | pkill dunst & 14 | picom & 15 | cp ~/.cache/wal/dunstrc ~/.config/dunst/dunstrc & 16 | cp ~/.cache/wal/config ~/.config/cava/config & 17 | cp ~/.cache/wal/flameshot.ini ~/.config/flameshot/flameshot.ini & 18 | sudo cp ~/.cache/wal/QARSlp.rasi /root/.cache/wal/ 19 | pkill -USR1 cava & 20 | dunst & 21 | wal-telegram & 22 | wal -R 23 | -------------------------------------------------------------------------------- /dotfiles/.local/bin/autostart: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | syncthing & 12 | caffeine start & 13 | transmission-daemon & 14 | kdeconnect-indicator & 15 | blueman-applet & 16 | barrier & 17 | 18 | 19 | -------------------------------------------------------------------------------- /dotfiles/.local/bin/bluet: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | divider="---------" 12 | goback="Back" 13 | 14 | # Checks if bluetooth controller is powered on 15 | power_on() { 16 | if bluetoothctl show | grep -q "Powered: yes"; then 17 | return 0 18 | else 19 | return 1 20 | fi 21 | } 22 | 23 | # Toggles power state 24 | toggle_power() { 25 | if power_on; then 26 | bluetoothctl power off 27 | show_menu 28 | else 29 | if rfkill list bluetooth | grep -q 'blocked: yes'; then 30 | rfkill unblock bluetooth && sleep 3 31 | fi 32 | bluetoothctl power on 33 | show_menu 34 | fi 35 | } 36 | 37 | # Checks if controller is scanning for new devices 38 | scan_on() { 39 | if bluetoothctl show | grep -q "Discovering: yes"; then 40 | echo "Scan: on" 41 | return 0 42 | else 43 | echo "Scan: off" 44 | return 1 45 | fi 46 | } 47 | 48 | # Toggles scanning state 49 | toggle_scan() { 50 | if scan_on; then 51 | kill $(pgrep -f "bluetoothctl scan on") 52 | bluetoothctl scan off 53 | show_menu 54 | else 55 | bluetoothctl scan on & 56 | echo "Scanning..." 57 | sleep 5 58 | show_menu 59 | fi 60 | } 61 | 62 | # Checks if controller is able to pair to devices 63 | pairable_on() { 64 | if bluetoothctl show | grep -q "Pairable: yes"; then 65 | echo "Pairable: on" 66 | return 0 67 | else 68 | echo "Pairable: off" 69 | return 1 70 | fi 71 | } 72 | 73 | # Toggles pairable state 74 | toggle_pairable() { 75 | if pairable_on; then 76 | bluetoothctl pairable off 77 | show_menu 78 | else 79 | bluetoothctl pairable on 80 | show_menu 81 | fi 82 | } 83 | 84 | # Checks if controller is discoverable by other devices 85 | discoverable_on() { 86 | if bluetoothctl show | grep -q "Discoverable: yes"; then 87 | echo "Discoverable: on" 88 | return 0 89 | else 90 | echo "Discoverable: off" 91 | return 1 92 | fi 93 | } 94 | 95 | # Toggles discoverable state 96 | toggle_discoverable() { 97 | if discoverable_on; then 98 | bluetoothctl discoverable off 99 | show_menu 100 | else 101 | bluetoothctl discoverable on 102 | show_menu 103 | fi 104 | } 105 | 106 | # Checks if a device is connected 107 | device_connected() { 108 | device_info=$(bluetoothctl info "$1") 109 | if echo "$device_info" | grep -q "Connected: yes"; then 110 | return 0 111 | else 112 | return 1 113 | fi 114 | } 115 | 116 | # Toggles device connection 117 | toggle_connection() { 118 | if device_connected "$1"; then 119 | bluetoothctl disconnect "$1" 120 | device_menu "$device" 121 | else 122 | bluetoothctl connect "$1" 123 | device_menu "$device" 124 | fi 125 | } 126 | 127 | # Checks if a device is paired 128 | device_paired() { 129 | device_info=$(bluetoothctl info "$1") 130 | if echo "$device_info" | grep -q "Paired: yes"; then 131 | echo "Paired: yes" 132 | return 0 133 | else 134 | echo "Paired: no" 135 | return 1 136 | fi 137 | } 138 | 139 | # Toggles device paired state 140 | toggle_paired() { 141 | if device_paired "$1"; then 142 | bluetoothctl remove "$1" 143 | device_menu "$device" 144 | else 145 | bluetoothctl pair "$1" 146 | device_menu "$device" 147 | fi 148 | } 149 | 150 | # Checks if a device is trusted 151 | device_trusted() { 152 | device_info=$(bluetoothctl info "$1") 153 | if echo "$device_info" | grep -q "Trusted: yes"; then 154 | echo "Trusted: yes" 155 | return 0 156 | else 157 | echo "Trusted: no" 158 | return 1 159 | fi 160 | } 161 | 162 | # Toggles device connection 163 | toggle_trust() { 164 | if device_trusted "$1"; then 165 | bluetoothctl untrust "$1" 166 | device_menu "$device" 167 | else 168 | bluetoothctl trust "$1" 169 | device_menu "$device" 170 | fi 171 | } 172 | 173 | # Prints a short string with the current bluetooth status 174 | # Useful for status bars like polybar, etc. 175 | print_status() { 176 | if power_on; then 177 | printf '' 178 | 179 | paired_devices_cmd="devices Paired" 180 | # Check if an outdated version of bluetoothctl is used to preserve backwards compatibility 181 | if (( $(echo "$(bluetoothctl version | cut -d ' ' -f 2) < 5.65" | bc -l) )); then 182 | paired_devices_cmd="paired-devices" 183 | fi 184 | 185 | mapfile -t paired_devices < <(bluetoothctl $paired_devices_cmd | grep Device | cut -d ' ' -f 2) 186 | counter=0 187 | 188 | for device in "${paired_devices[@]}"; do 189 | if device_connected "$device"; then 190 | device_alias=$(bluetoothctl info "$device" | grep "Alias" | cut -d ' ' -f 2-) 191 | 192 | if [ $counter -gt 0 ]; then 193 | printf ", %s" "$device_alias" 194 | else 195 | printf " %s" "$device_alias" 196 | fi 197 | 198 | ((counter++)) 199 | fi 200 | done 201 | printf "\n" 202 | else 203 | echo "" 204 | fi 205 | } 206 | 207 | # A submenu for a specific device that allows connecting, pairing, and trusting 208 | device_menu() { 209 | device=$1 210 | 211 | # Get device name and mac address 212 | device_name=$(echo "$device" | cut -d ' ' -f 3-) 213 | mac=$(echo "$device" | cut -d ' ' -f 2) 214 | 215 | # Build options 216 | if device_connected "$mac"; then 217 | connected="Connected: yes" 218 | else 219 | connected="Connected: no" 220 | fi 221 | paired=$(device_paired "$mac") 222 | trusted=$(device_trusted "$mac") 223 | options="$connected\n$paired\n$trusted\n$divider\n$goback" 224 | 225 | # Open rofi menu, read chosen option 226 | chosen="$(echo -e "$options" | $rofi_command "$device_name")" 227 | 228 | # Match chosen option to command 229 | case "$chosen" in 230 | "" | "$divider") 231 | echo "No option chosen." 232 | ;; 233 | "$connected") 234 | toggle_connection "$mac" 235 | ;; 236 | "$paired") 237 | toggle_paired "$mac" 238 | ;; 239 | "$trusted") 240 | toggle_trust "$mac" 241 | ;; 242 | "$goback") 243 | show_menu 244 | ;; 245 | esac 246 | } 247 | 248 | # Opens a rofi menu with current bluetooth status and options to connect 249 | show_menu() { 250 | # Get menu options 251 | if power_on; then 252 | power="Power: on" 253 | 254 | # Human-readable names of devices, one per line 255 | # If scan is off, will only list paired devices 256 | devices=$(bluetoothctl devices | grep Device | cut -d ' ' -f 3-) 257 | 258 | # Get controller flags 259 | scan=$(scan_on) 260 | pairable=$(pairable_on) 261 | discoverable=$(discoverable_on) 262 | 263 | # Options passed to rofi 264 | options="$devices\n$divider\n$power\n$scan\n$pairable\n$discoverable" 265 | else 266 | power="Power: off" 267 | options="$power\nExit" 268 | fi 269 | 270 | # Open rofi menu, read chosen option 271 | chosen="$(echo -e "$options" | $rofi_command "Bluetooth")" 272 | 273 | # Match chosen option to command 274 | case "$chosen" in 275 | "" | "$divider") 276 | echo "No option chosen." 277 | ;; 278 | "$power") 279 | toggle_power 280 | ;; 281 | "$scan") 282 | toggle_scan 283 | ;; 284 | "$discoverable") 285 | toggle_discoverable 286 | ;; 287 | "$pairable") 288 | toggle_pairable 289 | ;; 290 | *) 291 | device=$(bluetoothctl devices | grep "$chosen") 292 | # Open a submenu if a device is selected 293 | if [[ $device ]]; then device_menu "$device"; fi 294 | ;; 295 | esac 296 | } 297 | 298 | # Rofi command to pipe into, can add any options here 299 | rofi_command="rofi -dmenu $* -p -theme ~/.config/rofi/bluetooth.rasi" 300 | 301 | case "$1" in 302 | --status) 303 | print_status 304 | ;; 305 | *) 306 | show_menu 307 | ;; 308 | esac -------------------------------------------------------------------------------- /dotfiles/.local/bin/calculator: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | function usage() { 13 | echo "$(tput bold)rofi-insect calculator plugin$(tput sgr0) 14 | An insect (fancy calculator that does unit conversions) plugin for Rofi or dmenu 15 | 16 | This script supports (almost) anything insect does. 17 | The previous result is ALWAYS passed as the first argument 18 | 19 | $(tput bold)Clear if results start not making sense!$(tput sgr0) 20 | 21 | Report bugs at: https://github.com/alichtman/rofi-insect/issues/new" 22 | exit 23 | } 24 | 25 | ###### 26 | # MAIN 27 | ###### 28 | 29 | 30 | case "$1" in 31 | -h|-help|--help|help) usage ;; 32 | esac 33 | 34 | if [[ -n $(command -v rofi) ]]; then 35 | menu="$(command -v rofi) -dmenu -theme ~/.config/rofi/calculator.rasi" 36 | elif [[ -n $(command -v dmenu) ]]; then 37 | menu="$(command -v dmenu)" 38 | else 39 | echo >&2 "Rofi or dmenu not found" 40 | exit 41 | fi 42 | 43 | input="$*" 44 | answer=$(echo "$input" | insect) 45 | notify-send -a "Calculator" "$input  $answer" 46 | action=$(echo -e "Copy\nClear" | $menu -i -p "  $answer") 47 | 48 | case $action in 49 | "Clear") $0 ;; 50 | "Copy") echo -n $answer | awk '{$1=$1};1' | xsel -ib ;; 51 | "") ;; 52 | *) $0 "$answer $action" ;; 53 | esac -------------------------------------------------------------------------------- /dotfiles/.local/bin/calendar: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | send_notification() { 12 | TODAY=$(date '+%-d') 13 | HEAD=$(cal "$1" | head -n1) 14 | BODY=$(cal "$1" | tail -n7 | sed -z "s|$TODAY|$TODAY|1") 15 | FOOT="\n ~ calendar  " 16 | notify-send -a Calendar -h string:x-canonical-private-synchronous:calendar \ 17 | "$HEAD" "$BODY$FOOT" -u NORMAL 18 | } 19 | 20 | handle_action() { 21 | echo "$DIFF" > "$TMP" 22 | if [ "$DIFF" -ge 0 ]; then 23 | send_notification "+$DIFF months" 24 | else 25 | send_notification "$((-DIFF)) months ago" 26 | fi 27 | } 28 | 29 | TMP=${XDG_RUNTIME_DIR:-/tmp}/"$UID"_calendar_notification_month 30 | touch "$TMP" 31 | 32 | DIFF=$(<"$TMP") 33 | 34 | case $1 in 35 | "curr") DIFF=0;; 36 | "next") DIFF=$((DIFF+1));; 37 | "prev") DIFF=$((DIFF-1));; 38 | esac 39 | 40 | handle_action 41 | -------------------------------------------------------------------------------- /dotfiles/.local/bin/change_display: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env zsh 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | typeset XRANDR_TXT 13 | typeset -A OUTPUT_CONFIGURED 14 | 15 | function main() { 16 | local -i iteration 17 | local max_iteration 18 | local output 19 | local mode 20 | local position 21 | local xrandr_cmd 22 | 23 | environment_check 24 | 25 | max_iteration=${(w)#OUTPUT_CONFIGURED} 26 | xrandr_cmd='xrandr' 27 | 28 | while ! all_outputs_configured && (( $iteration <= $max_iteration )); do 29 | if (( iteration++ )); then 30 | select_output ' Next Screen' 'unconfigured' | read output 31 | select_position "${output}" | read position 32 | [[ "${position}" != '--off' ]] && select_mode "${output}" | read mode 33 | OUTPUT_CONFIGURED[${output}]='true' 34 | else 35 | select_output ' Main Screen' 'all' | read output 36 | select_mode "${output}" | read mode 37 | OUTPUT_CONFIGURED[${output}]='true' 38 | position='--primary' 39 | fi 40 | xrandr_cmd+=" --output ${output} ${position} ${mode}" 41 | done 42 | 43 | ${=xrandr_cmd} 44 | } 45 | 46 | function select_output() { 47 | local -a menu 48 | local output 49 | local -ir err_bad_args=257 50 | local -ir err_bad_selection=258 51 | local -ir err_no_options=259 52 | 53 | case "$2" in 54 | 'configured') 55 | for output in ${(k)OUTPUT_CONFIGURED}; do 56 | ${OUTPUT_CONFIGURED[$output]} && menu+=("$output") 57 | done 58 | ;; 59 | 'unconfigured') 60 | for output in ${(k)OUTPUT_CONFIGURED}; do 61 | ${OUTPUT_CONFIGURED[$output]} || menu+=("$output") 62 | done 63 | ;; 64 | 'all') menu=(${(k)OUTPUT_CONFIGURED}) ;; 65 | *) return "${err_bad_args}" ;; 66 | esac 67 | 68 | case ${#menu} in 69 | 0) return "${err_no_options}" ;; 70 | 1) echo "${menu}" ;; 71 | *) echo ${(F)menu} | rofi -theme ~/.config/rofi/left.rasi -dmenu -l 10 -p "$1" ;; 72 | esac 73 | } 74 | 75 | function select_position() { 76 | local anchor 77 | local selection 78 | local -ir err_bad_arg=257 79 | local -ir err_bad_selection=258 80 | local -ir err_no_anchor=259 81 | 82 | [[ -z $1 ]] && return "${err_bad_arg}" 83 | 84 | select_output "Set $1 relative to:" 'configured' | read anchor 85 | [[ $? -eq 257 ]] && return "${err_no_anchor}" 86 | 87 | echo "left of ${anchor} 88 | right of ${anchor} 89 | above ${anchor} 90 | below ${anchor} 91 | mirror ${anchor} 92 | off" | rofi -theme ~/.config/rofi/left.rasi -dmenu -l 10 -p " Position  $1" | read selection 93 | 94 | case "${selection[(w)1]}" in 95 | left) echo "--left-of ${anchor}" ;; 96 | right) echo "--right-of ${anchor}" ;; 97 | above) echo "--above ${anchor}" ;; 98 | below) echo "--below ${anchor}" ;; 99 | mirror) echo "--same-as ${anchor}" ;; 100 | off) echo "--off" ;; 101 | *) return "${err_bad_selection}" ;; 102 | esac 103 | } 104 | 105 | function select_mode() { 106 | local menu 107 | local selection 108 | local -ir err_bad_args=257 109 | local -ir err_bad_selection=258 110 | 111 | if [[ -z $1 ]] && return "${err_bad_args}" 112 | 113 | menu="$(echo \"${XRANDR_TXT}\" \ 114 | | sed -n '/^'$1' /,/^[^ ]/ s/ * //p' \ 115 | | cut -d ' ' -f 1 \ 116 | | grep x \ 117 | | cat <(echo auto) -)" 118 | 119 | echo "${menu}" | rofi -theme ~/.config/rofi/left.rasi -dmenu -l 10 -p " Mode  $1" | read selection 120 | 121 | case "${selection}" in 122 | 'auto') echo '--auto' ;; 123 | *x*) echo "--mode ${selection}" ;; 124 | *) return "${err_bad_selection}" ;; 125 | esac 126 | } 127 | 128 | function all_outputs_configured() { 129 | local config 130 | 131 | for config in ${OUTPUT_CONFIGURED}; do 132 | $config || return 257 133 | done 134 | 135 | return 0 136 | } 137 | 138 | function environment_check() { 139 | if ! command -v cat &>/dev/null; then 140 | echo 'You seem to be missing coreutils. You' >&2 141 | exit 255 142 | elif ! command -v grep &>/dev/null; then 143 | echo 'grep seems to be missing. You' >&2 144 | exit 255 145 | elif ! command -v xrandr &>/dev/null; then 146 | echo "Try xrandr-dmenu without xrandr." >&2 147 | exit 255 148 | elif ! command -v rofi &>/dev/null; then 149 | echo "Try xrandr-dmenu without dmenu." >&2 150 | exit 255 151 | elif ! xset q &>/dev/null; then 152 | echo 'Waaaaaaaaaat?! You need to run this from inside X!' >&2 153 | exit 1 154 | fi 155 | } 156 | 157 | function initialize_globals() { 158 | local output 159 | 160 | XRANDR_TXT="$(xrandr)" 161 | for output in $(grep ' connected' <<< "${XRANDR_TXT}" | cut -d ' ' -f 1); do 162 | OUTPUT_CONFIGURED[${output}]='false' 163 | done 164 | } 165 | 166 | initialize_globals 167 | readonly XRANDR_TXT 168 | main 169 | qtile cmd-obj -o cmd -f restart 170 | 171 | -------------------------------------------------------------------------------- /dotfiles/.local/bin/cleansys: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | sudo pacman -Scc --noconfirm 13 | 14 | sudo pacman -Rns $(pacman -Qtdq) --noconfirm 15 | 16 | notify-send -a ' QARSlp' "System Clean!" -------------------------------------------------------------------------------- /dotfiles/.local/bin/genwal: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | variables=() 13 | while IFS= read -r line; do 14 | variables+=("$line") 15 | done < ~/.config/qtile/variables 16 | 17 | dir="$HOME/Pictures/Wallpapers/" 18 | file=`/bin/ls -1 "$dir" | sort --random-sort | head -1` # Select random file on directory 19 | path=`readlink --canonicalize "$dir/$file"` # Converts to full path 20 | #### Set Wallpaper Selected / Random 21 | while getopts "w:t:l" opt; do 22 | case "$opt" in 23 | w) wall=$OPTARG ;; 24 | t) back=$OPTARG ;; 25 | l) light="-L" ;; 26 | esac 27 | done 28 | 29 | set_wall(){ 30 | if [ -z "$wall" ] 31 | then 32 | wpg ${variables[4]} -s ${path} --backend ${variables[2]} # Wal sets wallpaper and genates new color scheme 33 | cp ${path} "/usr/local/backgrounds/background.png" 34 | cp -r ~/.local/share/themes/FlatColor /usr/local/themes/ 35 | else 36 | wpg ${variables[4]} -s ${dir}${wall} ${variables[2]} # Wal sets wallpaper and genates new color scheme 37 | cp ${dir}${wall} "/usr/local/backgrounds/background.png" 38 | cp -r ~/.local/share/themes/FlatColor /usr/local/themes/ 39 | 40 | fi 41 | } 42 | set_wall 43 | qtile cmd-obj -o cmd -f restart -------------------------------------------------------------------------------- /dotfiles/.local/bin/notesfi: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | EDITOR=code 13 | VIEW=/usr/bin/zathura-pywal 14 | TERMINAL=alacritty 15 | 16 | # <<------ Directories ------>> # 17 | book_library="$HOME/books/" 18 | note_library="$HOME/notable/" 19 | article_library="$HOME/Articles/" 20 | 21 | # <<------ Main ------>> # 22 | create_document() { 23 | # Use rofi to prompt the user to select the type of document to create 24 | document_type=$(echo -e "Markdown\nLaTeX\nBeamer\nRmark" | rofi -dmenu -i -p "Type of Note?" -theme "~/.config/rofi/left.rasi") 25 | 26 | # Check if the user cancelled the prompt 27 | if [ -z "$document_type" ]; then 28 | return 29 | fi 30 | 31 | case "$document_type" in 32 | Markdown) 33 | template="SimpleNote.md" 34 | EXTENSION="md" 35 | message="New Markdwn Note!" 36 | ;; 37 | LaTeX) 38 | template="LaTeX.tex" 39 | EXTENSION="tex" 40 | message="New LaTeX Note!" 41 | ;; 42 | Beamer) 43 | template="Presentation.tex" 44 | EXTENSION="tex" 45 | message="New Beamer Presentation!" 46 | ;; 47 | Rmark) 48 | template="RMarkdown.rmd" 49 | EXTENSION="rmd" 50 | message="New R Markdown Note!" 51 | ;; 52 | *) 53 | echo "Invalid option" 54 | return 1 55 | ;; 56 | esac 57 | 58 | # Use rofi to prompt the user to enter a name for the note 59 | cn_name=$(rofi -dmenu -p "Note Name:" -theme "~/.config/rofi/left.rasi") 60 | 61 | # Check if the user cancelled the prompt 62 | if [ -z "$cn_name" ]; then 63 | return 64 | fi 65 | 66 | # Check if the file already exists 67 | if [ -f "$directory/$cn_name.$EXTENSION" ]; then 68 | # Prompt the user to confirm if they want to overwrite the file 69 | if ! (echo -e "Yes\nNo" | rofi -dmenu -p "Note already exists. Overwrite?" | grep -q "Yes"); then 70 | return 71 | fi 72 | fi 73 | 74 | notify-send -a " QARSlp" "$message" 75 | cp "$directory/Templates/$template" "$directory/$cn_name.$EXTENSION" 76 | "$TERMINAL" -e "$EDITOR" "$directory/$cn_name.$EXTENSION" 77 | } 78 | 79 | open_document() { 80 | # case insensitive search with ripgrep 81 | document=$(rg --files --iglob "*.pdf" --iglob "*.epub" --iglob "*.mobi" $directory) 82 | selected_document=$(echo "$document" | rofi -dmenu -i -p " Open:" -theme "~/.config/rofi/left.rasi") 83 | if [[ -n $selected_document ]]; then 84 | $VIEW "$selected_document" 85 | fi 86 | } 87 | 88 | edit_notes() { 89 | document=$(rg --files --iglob "*.md" --iglob "*.wiki" --iglob "*.tex" $directory) 90 | selected_document=$(echo "$document" | rofi -dmenu -i -p " Open:" -theme "~/.config/rofi/shortcuts.rasi") 91 | if [[ -n $selected_document ]]; then 92 | $TERMINAL -e $EDITOR "$selected_document" 93 | fi 94 | } 95 | 96 | download_books() { 97 | bookname=$(echo "" | rofi -dmenu -p "Enter book name:" -theme "~/.config/rofi/left.rasi") 98 | if [ -z "$bookname" ] 99 | then 100 | echo "No book name entered" 101 | exit 1 102 | fi 103 | 104 | $TERMINAL -T "dropbooks" -e libby $bookname 105 | } 106 | 107 | main() { 108 | # Prompt the user to select "Library" or "Articles" using Rofi 109 | selected_dir=$(echo -e " Create Note\n View Notes\n Library\n Articles\n Download Books" | rofi -dmenu -i -p " Choose:" -theme "~/.config/rofi/left.rasi") 110 | # Set the directory based on the user's selection 111 | # if selected_dir is not empty 112 | if [[ -n $selected_dir ]]; then 113 | case $selected_dir in 114 | " Create Note") 115 | directory=$note_library 116 | create_document 117 | ;; 118 | " View Notes") 119 | directory=$note_library 120 | edit_notes 121 | ;; 122 | " Library") 123 | directory=$book_library 124 | open_document 125 | ;; 126 | " Articles") 127 | directory=$article_library 128 | open_document 129 | ;; 130 | " Download Books") 131 | download_books 132 | ;; 133 | esac 134 | else 135 | exit 0 136 | fi 137 | } 138 | 139 | main -------------------------------------------------------------------------------- /dotfiles/.local/bin/recorder: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | DIR="$HOME/Recordings" 12 | 13 | check_dir () { 14 | if [ ! -d "$DIR" ]; then 15 | mkdir -p $DIR 16 | else 17 | echo "$DIR already exists" 18 | fi 19 | } 20 | 21 | getdim() { xrandr | sed -n "s/\s*\([0-9]\+x[0-9]\+\).*\*.*/\1/p" ;} 22 | getaudio() { pactl list short sink-inputs | awk '{print $1}' ;} 23 | 24 | killrecording() { 25 | recpid="$(cat /tmp/recordingpid)" 26 | kill -15 "$recpid" 27 | rm -f /tmp/recordingpid 28 | pkill -RTMIN+9 "${STATUSBAR:-dwmblocks}" 29 | notify-send -a ' QARSlp' "Recording Stopped" 30 | } 31 | 32 | #### Laptop Audio Devices 33 | #-f pulse -ac 1 -ar 44100 -i alsa_output.pci-0000_00_1f.3.analog-stereo.monitor \ 34 | #-f pulse -ac 2 -ar 44100 -i alsa_input.pci-0000_00_1f.3.analog-stereo \ 35 | 36 | #### Pc Audio Devices 37 | # -f pulse -ac 1 -ar 44100alsa_output.usb-GeneralPlus_USB_Audio_Device-00.analog-stereo.monitor 38 | # -f pulse -ac 1 -ar 44100alsa_input.usb-C-Media_Electronics_Inc._GameFactor_MCG601-00.mono-fallback 39 | 40 | screencast() { \ 41 | ffmpeg -y \ 42 | -f x11grab \ 43 | -framerate 30 \ 44 | -video_size "$(getdim)" \ 45 | -i "$DISPLAY" \ 46 | -f pulse -ac 1 -ar 44100alsa_output.usb-GeneralPlus_USB_Audio_Device-00.analog-stereo.monitor 47 | -f pulse -ac 1 -ar 44100alsa_input.usb-C-Media_Electronics_Inc._GameFactor_MCG601-00.mono-fallback 48 | -filter_complex amix=inputs=2 \ 49 | -vcodec libx264 -preset veryfast -crf 18 \ 50 | -acodec libmp3lame -ar 44100 -q:a 1 \ 51 | -pix_fmt yuv420p \ 52 | "$DIR/Full-$(date '+%y%m%d-%H%M-%S').mp4" & 53 | echo $! > /tmp/recordingpid & 54 | notify-send -a ' QARSlp' "Video & Audio Recording Started" & 55 | } 56 | 57 | video() { ffmpeg \ 58 | -f x11grab \ 59 | -framerate 30 \ 60 | -video_size "$(getdim)" \ 61 | -i "$DISPLAY" \ 62 | -vcodec libx264 -preset veryfast -crf 18 \ 63 | -pix_fmt yuv420p \ 64 | "$DIR/video-$(date '+%y%m%d-%h%m-%s').mp4" & 65 | echo $! > /tmp/recordingpid & 66 | notify-send -a ' QARSlp' "Video Recording Started" & 67 | } 68 | 69 | audio() { \ 70 | ffmpeg \ 71 | -f pulse -ac 1 -ar 44100alsa_output.usb-GeneralPlus_USB_Audio_Device-00.analog-stereo.monitor 72 | -f pulse -ac 1 -ar 44100alsa_input.usb-C-Media_Electronics_Inc._GameFactor_MCG601-00.mono-fallback 73 | -filter_complex amix=inputs=2 \ 74 | -acodec libmp3lame -ar 44100 -q:a 1 \ 75 | "$DIR/audio-$(date '+%y%m%d-%H%M-%S').mp3" & 76 | echo $! > /tmp/recordingpid & 77 | notify-send -a ' QARSlp' "Audio Recording Started" & 78 | } 79 | 80 | option1=" Audio & Video" 81 | option2=" Video" 82 | option3=" Audio" 83 | option4=" Stop recording" 84 | option5=" Exit" 85 | 86 | if [ ! -f /tmp/recordingpid ] ; then 87 | options="$option1\n$option2\n$option3\n$option5" 88 | else 89 | options="$option4\n$option5" 90 | fi 91 | 92 | choice=$(echo -e "$options" | rofi -theme ~/.config/rofi/left.rasi -i -dmenu -no-show-icons -no-sidebar-mode -lines 4 -width 30 -p " Select Recording") 93 | 94 | case $choice in 95 | $option1) screencast ;; 96 | $option2) video ;; 97 | $option3) audio ;; 98 | $option4) killrecording ;; 99 | *) exit ;; 100 | esac -------------------------------------------------------------------------------- /dotfiles/.local/bin/selectwal: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | variables=() 13 | while IFS= read -r line; do 14 | variables+=("$line") 15 | done < ~/.config/qtile/variables 16 | 17 | set_wall(){ 18 | wpg ${variables[4]} -s $WALLPAPER --backend ${variables[2]} # Wal sets wallpaper and genates new color scheme 19 | cp $WALLPAPER "/usr/local/backgrounds/background.png" 20 | cp -r ~/.local/share/themes/FlatColor /usr/local/themes/ 21 | qtile cmd-obj -o cmd -f restart 22 | } 23 | 24 | get_wall(){ 25 | rofi -show file-browser-extended -theme ~/.config/rofi/sel_wal.rasi -file-browser-dir ~/Pictures/Wallpapers -file-browser-stdout 26 | } 27 | 28 | WALLPAPER=$(get_wall) 29 | 30 | if [ -z "$WALLPAPER" ] 31 | then 32 | notify-send -a ' QARSlp' " Wallpaper Not Selected" 33 | else 34 | set_wall 35 | fi 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /dotfiles/.local/bin/updater: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | # Install Needed Packages 12 | function install_new_packages() { 13 | packets=( 14 | ) 15 | for packet in "${packets[@]}"; do 16 | echo "Installing --> ${packet}" 17 | sudo pacman -S "${packet}" --noconfirm --needed 18 | done 19 | } 20 | 21 | # Install AUR packages 22 | function aur_packages() { 23 | packets=( 24 | ) 25 | for packet in "${packets[@]}"; do 26 | echo "Intalling --> ${packet}" 27 | paru -S "${packet}" --noconfirm 28 | done 29 | } 30 | 31 | #Copy updated dotfiles 32 | function update(){ 33 | } 34 | 35 | install_new_packages 36 | aur_packages 37 | update -------------------------------------------------------------------------------- /dotfiles/.local/bin/wifi2: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | # Starts a scan of available broadcasting SSIDs 13 | # nmcli dev wifi rescan 14 | 15 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 16 | 17 | FIELDS=SSID,SECURITY 18 | POSITION=0 19 | YOFF=0 20 | XOFF=0 21 | FONT="Fira Code Medium 13" 22 | 23 | if [ -r "$DIR/config" ]; then 24 | source "$DIR/config" 25 | elif [ -r "$HOME/.config/rofi/wifi" ]; then 26 | source "$HOME/.config/rofi/wifi" 27 | else 28 | echo "WARNING: config file not found! Using default values." 29 | fi 30 | 31 | LIST=$(nmcli --fields "$FIELDS" device wifi list | sed '/^--/d') 32 | # For some reason rofi always approximates character width 2 short... hmmm 33 | RWIDTH=$(($(echo "$LIST" | head -n 1 | awk '{print length($0); }')+2)) 34 | # Dynamically change the height of the rofi menu 35 | LINENUM=$(echo "$LIST" | wc -l) 36 | # Gives a list of known connections so we can parse it later 37 | KNOWNCON=$(nmcli connection show) 38 | # Really janky way of telling if there is currently a connection 39 | CONSTATE=$(nmcli -fields WIFI g) 40 | 41 | CURRSSID=$(LANGUAGE=C nmcli -t -f active,ssid dev wifi | awk -F: '$1 ~ /^yes/ {print $2}') 42 | 43 | if [[ ! -z $CURRSSID ]]; then 44 | HIGHLINE=$(echo "$(echo "$LIST" | awk -F "[ ]{2,}" '{print $1}' | grep -Fxn -m 1 "$CURRSSID" | awk -F ":" '{print $1}') + 1" | bc ) 45 | fi 46 | 47 | if [ "$LINENUM" -gt 8 ] && [[ "$CONSTATE" =~ "enabled" ]]; then 48 | LINENUM=8 49 | elif [[ "$CONSTATE" =~ "disabled" ]]; then 50 | LINENUM=1 51 | fi 52 | 53 | 54 | if [[ "$CONSTATE" =~ "enabled" ]]; then 55 | TOGGLE=" Toggle Wifi Off" 56 | elif [[ "$CONSTATE" =~ "disabled" ]]; then 57 | TOGGLE=" Toggle Wifi On" 58 | fi 59 | 60 | 61 | 62 | CHENTRY=$(echo -e "$TOGGLE\n Manual\n$LIST" | uniq -u | rofi -theme '~/.config/rofi/network2.rasi' -dmenu -p " Wi-Fi SSID: " -lines "$LINENUM" -a "$HIGHLINE" -location "$POSITION" -yoffset "$YOFF" -xoffset "$XOFF" -font "$FONT" -width -"$RWIDTH") 63 | #echo "$CHENTRY" 64 | CHSSID=$(echo "$CHENTRY" | sed 's/\s\{2,\}/\|/g' | awk -F "|" '{print $1}') 65 | #echo "$CHSSID" 66 | 67 | # If the user inputs "manual" as their SSID in the start window, it will bring them to this screen 68 | if [ "$CHENTRY" = " Manual" ] ; then 69 | # Manual entry of the SSID and password (if appplicable) 70 | MSSID=$(echo "Enter  SSID,  Password" | rofi -theme '~/.config/rofi/network2.rasi' -dmenu -p " Manual Entry: " -font "$FONT" -lines 1) 71 | # Separating the password from the entered string 72 | MPASS=$(echo "$MSSID" | awk -F "," '{print $2}') 73 | 74 | #echo "$MSSID" 75 | #echo "$MPASS" 76 | 77 | # If the user entered a manual password, then use the password nmcli command 78 | if [ "$MPASS" = "" ]; then 79 | nmcli dev wifi con "$MSSID" 80 | else 81 | nmcli dev wifi con "$MSSID" password "$MPASS" 82 | fi 83 | 84 | elif [ "$CHENTRY" = "toggle on" ]; then 85 | nmcli radio wifi on 86 | 87 | elif [ "$CHENTRY" = "toggle off" ]; then 88 | nmcli radio wifi off 89 | 90 | else 91 | 92 | # If the connection is already in use, then this will still be able to get the SSID 93 | if [ "$CHSSID" = "*" ]; then 94 | CHSSID=$(echo "$CHENTRY" | sed 's/\s\{2,\}/\|/g' | awk -F "|" '{print $3}') 95 | fi 96 | 97 | # Parses the list of preconfigured connections to see if it already contains the chosen SSID. This speeds up the connection process 98 | if [[ $(echo "$KNOWNCON" | grep "$CHSSID") = "$CHSSID" ]]; then 99 | nmcli con up "$CHSSID" 100 | else 101 | if [[ "$CHENTRY" =~ "WPA2" ]] || [[ "$CHENTRY" =~ "WEP" ]]; then 102 | WIFIPASS=$(echo "if connection is stored, hit enter" | rofi -theme '~/.config/rofi/network2.rasi' -dmenu -p " Password: " -lines 1 -font "$FONT" ) 103 | fi 104 | nmcli dev wifi con "$CHSSID" password "$WIFIPASS" 105 | fi 106 | 107 | fi 108 | -------------------------------------------------------------------------------- /dotfiles/.oh-my-zsh/themes/avit.zsh-theme: -------------------------------------------------------------------------------- 1 | # AVIT ZSH Theme 2 | TOP_MARGIN=$'\n' 3 | # settings 4 | typeset +H _current_dir="%{$fg_bold[blue]%}%3~%{$reset_color%} " 5 | typeset +H _return_status="%{$fg_bold[red]%}%(?..)%{$reset_color%}" 6 | typeset +H _hist_no="%{$fg[grey]%}%h%{$reset_color%}" 7 | 8 | PROMPT='${TOP_MARGIN}$(_user_host)${_current_dir} $(git_prompt_info) $(ruby_prompt_info) 9 | %{%(!.${fg[red]}.${fg[cyan]})%}%{$reset_color%} ' 10 | 11 | PROMPT2='%{%(!.${fg[red]}.${fg[white]})%}◀%{$reset_color%} ' 12 | 13 | RPROMPT='$(vi_mode_prompt_info)%{$(echotc UP 1)%}$(_git_time_since_commit) $(git_prompt_status) ${_return_status}%{$(echotc DO 1)%}' 14 | 15 | function _user_host() { 16 | local me 17 | if [[ -n $SSH_CONNECTION ]]; then 18 | me="%n@%m" 19 | elif [[ $LOGNAME != $USERNAME ]]; then 20 | me="%n" 21 | fi 22 | if [[ -n $me ]]; then 23 | echo "%{$fg[cyan]%}$me%{$reset_color%}:" 24 | fi 25 | } 26 | 27 | # Determine the time since last commit. If branch is clean, 28 | # use a neutral color, otherwise colors will vary according to time. 29 | function _git_time_since_commit() { 30 | local last_commit now seconds_since_last_commit 31 | local minutes hours days years commit_age 32 | # Only proceed if there is actually a commit. 33 | if last_commit=$(command git -c log.showSignature=false log --format='%at' -1 2>/dev/null); then 34 | now=$(date +%s) 35 | seconds_since_last_commit=$((now-last_commit)) 36 | 37 | # Totals 38 | minutes=$((seconds_since_last_commit / 60)) 39 | hours=$((minutes / 60)) 40 | days=$((hours / 24)) 41 | years=$((days / 365)) 42 | 43 | if [[ $years -gt 0 ]]; then 44 | commit_age="${years}y$((days % 365 ))d" 45 | elif [[ $days -gt 0 ]]; then 46 | commit_age="${days}d$((hours % 24))h" 47 | elif [[ $hours -gt 0 ]]; then 48 | commit_age+="${hours}h$(( minutes % 60 ))m" 49 | else 50 | commit_age="${minutes}m" 51 | fi 52 | 53 | echo "${ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL}${commit_age}%{$reset_color%}" 54 | fi 55 | } 56 | 57 | MODE_INDICATOR="%{$fg_bold[yellow]%}❮%{$reset_color%}%{$fg[yellow]%}❮❮%{$reset_color%}" 58 | 59 | # Git prompt settings 60 | ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}" 61 | ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" 62 | ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}%{$reset_color%}" 63 | ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}%{$reset_color%}" 64 | ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} " 65 | ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%} " 66 | ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} " 67 | ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%}▴ " 68 | ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[cyan]%}§ " 69 | ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[white]%} " 70 | 71 | # Ruby prompt settings 72 | ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[grey]%}" 73 | ZSH_THEME_RUBY_PROMPT_SUFFIX="%{$reset_color%}" 74 | 75 | # Colors vary depending on time lapsed. 76 | ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" 77 | ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM="%{$fg[yellow]%}" 78 | ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG="%{$fg[red]%}" 79 | ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[white]%}" 80 | 81 | # LS colors, made with https://geoff.greer.fm/lscolors/ 82 | export LSCOLORS="exfxcxdxbxegedabagacad" 83 | export LS_COLORS='di=34;40:ln=35;40:so=32;40:pi=33;40:ex=31;40:bd=34;46:cd=34;43:su=0;41:sg=0;46:tw=0;42:ow=0;43:' 84 | export GREP_COLORS='mt=1;33' 85 | -------------------------------------------------------------------------------- /dotfiles/.oh-my-zsh/themes/passion.zsh-theme: -------------------------------------------------------------------------------- 1 | 2 | # gdate for macOS 3 | # REF: https://apple.stackexchange.com/questions/135742/time-in-milliseconds-since-epoch-in-the-terminal 4 | if [[ "$OSTYPE" == "darwin"* ]]; then 5 | { 6 | gdate 7 | } || { 8 | echo "\n$fg_bold[yellow]passsion.zsh-theme depends on cmd [gdate] to get current time in milliseconds$reset_color" 9 | echo "$fg_bold[yellow][gdate] is not installed by default in macOS$reset_color" 10 | echo "$fg_bold[yellow]to get [gdate] by running:$reset_color" 11 | echo "$fg_bold[green]brew install coreutils;$reset_color"; 12 | echo "$fg_bold[yellow]\nREF: https://github.com/ChesterYue/ohmyzsh-theme-passion#macos\n$reset_color" 13 | } 14 | fi 15 | 16 | 17 | # time 18 | function real_time() { 19 | local color="%{$fg_no_bold[cyan]%}"; # color in PROMPT need format in %{XXX%} which is not same with echo 20 | local time="[$(date +%H:%M:%S)]"; 21 | local color_reset="%{$reset_color%}"; 22 | echo "${color}${time}${color_reset}"; 23 | } 24 | 25 | # login_info 26 | function login_info() { 27 | local color="%{$fg_no_bold[cyan]%}"; # color in PROMPT need format in %{XXX%} which is not same with echo 28 | local ip 29 | if [[ "$OSTYPE" == "linux-gnu" ]]; then 30 | # Linux 31 | ip="$(ifconfig | grep ^eth1 -A 1 | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | head -1)"; 32 | elif [[ "$OSTYPE" == "darwin"* ]]; then 33 | # macOS 34 | ip="$(ifconfig | grep ^en1 -A 4 | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | head -1)"; 35 | elif [[ "$OSTYPE" == "cygwin" ]]; then 36 | # POSIX compatibility layer and Linux environment emulation for Windows 37 | elif [[ "$OSTYPE" == "msys" ]]; then 38 | # Lightweight shell and GNU utilities compiled for Windows (part of MinGW) 39 | elif [[ "$OSTYPE" == "win32" ]]; then 40 | # I'm not sure this can happen. 41 | elif [[ "$OSTYPE" == "freebsd"* ]]; then 42 | # ... 43 | else 44 | # Unknown. 45 | fi 46 | local color_reset="%{$reset_color%}"; 47 | echo "${color}[%n@${ip}]${color_reset}"; 48 | } 49 | 50 | 51 | # directory 52 | function directory() { 53 | local color="%{$fg_no_bold[cyan]%}"; 54 | # REF: https://stackoverflow.com/questions/25944006/bash-current-working-directory-with-replacing-path-to-home-folder 55 | local directory="${PWD/#$HOME/~}"; 56 | local color_reset="%{$reset_color%}"; 57 | echo "${color}[${directory}]${color_reset}"; 58 | } 59 | 60 | 61 | # git 62 | ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_no_bold[blue]%} %{$fg_no_bold[red]%}  (%{$fg_no_bold[yellow]%}"; 63 | ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "; 64 | ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_no_bold[cyan]%})  "; 65 | ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_no_bold[green]%})  "; 66 | 67 | function update_git_status() { 68 | GIT_STATUS=$(git_prompt_info); 69 | } 70 | 71 | function git_status() { 72 | echo "${GIT_STATUS}" 73 | } 74 | 75 | 76 | # command 77 | function update_command_status() { 78 | local arrow=""; 79 | local color_reset="%{$reset_color%}"; 80 | local reset_font="%{$fg_no_bold[white]%}"; 81 | COMMAND_RESULT=$1; 82 | export COMMAND_RESULT=$COMMAND_RESULT 83 | if $COMMAND_RESULT; 84 | then 85 | arrow="%{$fg_bold[blue]%}⮕%{$fg_bold[green]%}%{$fg_bold[blue]%}⮕%{$fg_bold[red]%}%{$fg_bold[blue]%}⮕%{$fg_bold[yellow]%}"; 86 | else 87 | arrow="%{$fg_bold[red]%}⮕⮕⮕"; 88 | fi 89 | COMMAND_STATUS="${arrow}${reset_font}${color_reset}"; 90 | } 91 | update_command_status true; 92 | 93 | function command_status() { 94 | echo "${COMMAND_STATUS}" 95 | } 96 | 97 | 98 | # output command execute after 99 | output_command_execute_after() { 100 | if [ "$COMMAND_TIME_BEIGIN" = "-20200325" ] || [ "$COMMAND_TIME_BEIGIN" = "" ]; 101 | then 102 | return 1; 103 | fi 104 | 105 | # cmd 106 | local cmd="${$(fc -l | tail -1)#* }"; 107 | local color_cmd=""; 108 | if $1; 109 | then 110 | color_cmd="$fg_no_bold[green]"; 111 | else 112 | color_cmd="$fg_bold[red]"; 113 | fi 114 | local color_reset="$reset_color"; 115 | cmd="${color_cmd}${cmd}${color_reset}" 116 | 117 | # time 118 | local time="[$(date +%H:%M:%S)]" 119 | local color_time="$fg_no_bold[red]"; 120 | time="${color_time}${time}${color_reset}"; 121 | 122 | # cost 123 | local time_end="$(current_time_millis)"; 124 | local cost=$(bc -l <<<"${time_end}-${COMMAND_TIME_BEIGIN}"); 125 | COMMAND_TIME_BEIGIN="-20200325" 126 | local length_cost=${#cost}; 127 | if [ "$length_cost" = "4" ]; 128 | then 129 | cost="0${cost}" 130 | fi 131 | cost="[cost ${cost}s]" 132 | local color_cost="$fg_no_bold[green]"; 133 | cost="${color_cost}${cost}${color_reset}"; 134 | 135 | echo -e "${time} ${cost} ${cmd}"; 136 | echo -e ""; 137 | } 138 | 139 | 140 | # command execute before 141 | # REF: http://zsh.sourceforge.net/Doc/Release/Functions.html 142 | preexec() { 143 | COMMAND_TIME_BEIGIN="$(current_time_millis)"; 144 | } 145 | 146 | current_time_millis() { 147 | local time_millis; 148 | if [[ "$OSTYPE" == "linux-gnu" ]]; then 149 | # Linux 150 | time_millis="$(date +%s.%3N)"; 151 | elif [[ "$OSTYPE" == "darwin"* ]]; then 152 | # macOS 153 | time_millis="$(gdate +%s.%3N)"; 154 | elif [[ "$OSTYPE" == "cygwin" ]]; then 155 | # POSIX compatibility layer and Linux environment emulation for Windows 156 | elif [[ "$OSTYPE" == "msys" ]]; then 157 | # Lightweight shell and GNU utilities compiled for Windows (part of MinGW) 158 | elif [[ "$OSTYPE" == "win32" ]]; then 159 | # I'm not sure this can happen. 160 | elif [[ "$OSTYPE" == "freebsd"* ]]; then 161 | # ... 162 | else 163 | # Unknown. 164 | fi 165 | echo $time_millis; 166 | } 167 | 168 | 169 | # command execute after 170 | # REF: http://zsh.sourceforge.net/Doc/Release/Functions.html 171 | precmd() { 172 | # last_cmd 173 | local last_cmd_return_code=$?; 174 | local last_cmd_result=true; 175 | if [ "$last_cmd_return_code" = "0" ]; 176 | then 177 | last_cmd_result=true; 178 | else 179 | last_cmd_result=false; 180 | fi 181 | 182 | # update_git_status 183 | update_git_status; 184 | 185 | # update_command_status 186 | update_command_status $last_cmd_result; 187 | 188 | # output command execute after 189 | output_command_execute_after $last_cmd_result; 190 | } 191 | 192 | 193 | # set option 194 | setopt PROMPT_SUBST; 195 | 196 | 197 | # timer 198 | #REF: https://stackoverflow.com/questions/26526175/zsh-menu-completion-causes-problems-after-zle-reset-prompt 199 | TMOUT=1; 200 | TRAPALRM() { 201 | # $(git_prompt_info) cost too much time which will raise stutters when inputting. so we need to disable it in this occurence. 202 | # if [ "$WIDGET" != "expand-or-complete" ] && [ "$WIDGET" != "self-insert" ] && [ "$WIDGET" != "backward-delete-char" ]; then 203 | # black list will not enum it completely. even some pipe broken will appear. 204 | # so we just put a white list here. 205 | if [ "$WIDGET" = "" ] || [ "$WIDGET" = "accept-line" ] ; then 206 | zle reset-prompt; 207 | fi 208 | } 209 | 210 | 211 | # prompt 212 | # PROMPT='$(real_time) $(login_info) $(directory) $(git_status)$(command_status) '; 213 | PROMPT='$(directory) $(git_status)$(command_status) '; 214 | -------------------------------------------------------------------------------- /dotfiles/.shortcuts: -------------------------------------------------------------------------------- 1 | <<----------<< Nomenclature >>---------->> 2 |  :: Control 3 | ❖ :: Super / Windows 4 | ⎇ :: Alt 5 |  :: Enter 6 |  :: Shift 7 |  :: Tab 8 | <<----------<< System >>---------->> 9 | ⎇ +  ::  Control Panel 10 | ❖ + S ::  Shortcuts 11 | ❖ + R ::  Prompt 12 | ❖ +  ::  Terminal 13 | ❖ +  + R ::  Restart Qtile 14 | ❖ +  + Q ::  Logout 15 |  + ⎇ + L ::  Lock Screen 16 |  + ⎇ + O ::  Lower Brightness 17 |  + ⎇ + P ::  Increase Brightness 18 | <<----------<< Theming >>---------->> 19 | ⎇ + R ::  Randomize Wallpaper 20 |  + ❖ + E ::  Select Wallpaper 21 | ⎇ + W ::  Theme Select 22 | ⎇ +  + W ::  Set Color Scheme 23 | ⎇ +  + R ::  Randomize Colors 24 | ❖ +  + W ::   Select Top or Bottom Bar 25 | <<----------<< Rofi Widgets >>---------->> 26 | ❖ +  +  ::  App Launcher 27 | ❖ + F ::  Search (WEB) 28 | ❖ + P ::  Color Picker 29 | ❖ + B ::  Bluetooth Manager 30 | ❖ + W ::  Network Menu 31 | ❖ +  + O ::  Night Light 32 | ❖ +  + X ::    Monitor Management 33 | prtnsc ::  Screenshot 34 | ❖ + X ::  Session Menu 35 | <<----------<< Windows >>---------->> 36 | ❖ + Q :: Kill Window  37 | ❖ + Escape ::  Kill Window (Mouse Click) 38 | ⎇ + G ::  Toggle Fullscreen 39 | ⎇ +  :: <- Swap Left 40 | ⎇ +  +  :: -> Swap Right 41 | ⎇ +  + F ::  Toggle Floating 42 | ❖ +  ::  Cycle Active Window 43 | ❖ +  +  ::  Cycle Active Window (Reverse) 44 | ❖ + Period :: Cycle Active Screen 45 | ❖ +  + Up ::  Grow 46 | ❖ +  + Down ::  Shrink 47 | ❖ +  + Space ::  Flip 48 | <<----------<< Layouts >>---------->> 49 | ❖ + Space ::  Cycle Layout 50 | ❖ + H ::  Layout Left 51 | ❖ + L ::  Layout Right 52 | ❖ + J ::  Layout Up 53 | ❖ + K ::  Layout Down 54 | ❖ +  + H ::  Swap Left 55 | ❖ +  + L ::  Swap Right 56 | ❖ +  + J ::  Shuffle Down 57 | ❖ +  + K ::  Shuffle Up 58 | ❖ + I ::  Grow 59 | ❖ + M ::  Shrink 60 | ❖ + N ::  Normalize 61 | ❖ + O ::  Maximize -------------------------------------------------------------------------------- /dotfiles/.taskrc: -------------------------------------------------------------------------------- 1 | # [Created by task 2.6.2 3/17/2023 17:45:19] 2 | # Taskwarrior program configuration file. 3 | # For more documentation, see https://taskwarrior.org or try 'man task', 'man task-color', 4 | # 'man task-sync' or 'man taskrc' 5 | 6 | # Here is an example of entries that use the default, override and blank values 7 | # variable=foo -- By specifying a value, this overrides the default 8 | # variable= -- By specifying no value, this means no default 9 | # #variable=foo -- By commenting out the line, or deleting it, this uses the default 10 | 11 | # You can also refence environment variables: 12 | # variable=$HOME/task 13 | # variable=$VALUE 14 | 15 | # Use the command 'task show' to see all defaults and overrides 16 | 17 | # Files 18 | data.location=/home/gibranlp/.task 19 | 20 | # To use the default location of the XDG directories, 21 | # move this configuration file from ~/.taskrc to ~/.config/task/taskrc and uncomment below 22 | 23 | #data.location=~/.local/share/task 24 | #hooks.location=~/.config/task/hooks 25 | 26 | # Color theme (uncomment one to use) 27 | #include light-16.theme 28 | #include light-256.theme 29 | #include dark-16.theme 30 | #include dark-256.theme 31 | #include dark-red-256.theme 32 | #include dark-green-256.theme 33 | #include dark-blue-256.theme 34 | #include dark-violets-256.theme 35 | #include dark-yellow-green.theme 36 | #include dark-gray-256.theme 37 | #include dark-gray-blue-256.theme 38 | #include solarized-dark-256.theme 39 | #include solarized-light-256.theme 40 | #include no-color.theme 41 | 42 | taskd.certificate=~/.config/task/private.certificate.pem 43 | taskd.key=~/.config/task/private.key.pem 44 | taskd.ca=~/.config/task/ca.cert.pem 45 | taskd.server=inthe.am:53589 46 | taskd.credentials=inthe_am/gibranlp/4cf8b43a-16d2-4bf7-b70c-b4282a3a574d 47 | taskd.trust=strict 48 | context.Helgen.read=project:Helgen 49 | context.Helgen.write=project:Helgen 50 | context.UMIN.read=project:UMIN 51 | context.UMIN.write=project:UMIN 52 | context.IPGOC.read=project:IPGOC 53 | context.IPGOC.write=project:IPGOC 54 | context.QARSlp.read=project:QARSlp 55 | context.QARSlp.write=project:QARSlp 56 | -------------------------------------------------------------------------------- /dotfiles/.zshrc: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | export ZSH=$HOME/.oh-my-zsh 12 | ZSH_THEME="avit" 13 | 14 | # Set list of themes to pick from when loading at random 15 | # Setting this variable when ZSH_THEME=random will cause zsh to load 16 | # a theme from this variable instead of looking in ~/.oh-my-zsh/themes/ 17 | # If set to an empty array, this variable will have no effect. 18 | # ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) 19 | 20 | # Uncomment the following line to use case-sensitive completion. 21 | CASE_SENSITIVE="true" 22 | 23 | # Uncomment the following line to use hyphen-insensitive completion. 24 | # Case-sensitive completion must be off. _ and - will be interchangeable. 25 | HYPHEN_INSENSITIVE="true" 26 | 27 | # Uncomment the following line to disable bi-weekly auto-update checks. 28 | # DISABLE_AUTO_UPDATE="true" 29 | 30 | # Uncomment the following line to automatically update without prompting. 31 | # DISABLE_UPDATE_PROMPT="true" 32 | 33 | # Uncomment the following line to change how often to auto-update (in days). 34 | export UPDATE_ZSH_DAYS=30 35 | 36 | # Uncomment the following line if pasting URLs and other text is messed up. 37 | # DISABLE_MAGIC_FUNCTIONS=true 38 | 39 | # Uncomment the following line to disable colors in ls. 40 | # DISABLE_LS_COLORS="true" 41 | 42 | # Uncomment the following line to disable auto-setting terminal title. 43 | # DISABLE_AUTO_TITLE="true" 44 | 45 | # Uncomment the following line to enable command auto-correction. 46 | #ENABLE_CORRECTION="true" 47 | 48 | # Uncomment the following line to display red dots whilst waiting for completion. 49 | COMPLETION_WAITING_DOTS="true" 50 | 51 | # Uncomment the following line if you want to disable marking untracked files 52 | # under VCS as dirty. This makes repository status check for large repositories 53 | # much, much faster. 54 | # DISABLE_UNTRACKED_FILES_DIRTY="true" 55 | 56 | # Uncomment the following line if you want to change the command execution time 57 | # stamp shown in the history command output. 58 | # You can set one of the optional three formats: 59 | # "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" 60 | # or set a custom format using the strftime function format specifications, 61 | # see 'man strftime' for details. 62 | HIST_STAMPS="yyyy/mm/dd" 63 | 64 | 65 | plugins=(archlinux 66 | colored-man-pages 67 | zsh-autosuggestions 68 | zsh-syntax-highlighting 69 | git) 70 | 71 | source $ZSH/oh-my-zsh.sh 72 | 73 | # User configuration 74 | 75 | # export MANPATH="/usr/local/man:$MANPATH" 76 | 77 | # You may need to manually set your language environment 78 | export LANG=en_US.UTF-8 79 | 80 | ## Aliases 81 | eval $(thefuck --alias) 82 | alias lzd="lazydocker" 83 | alias tsm="transmission-remote" 84 | alias sshelgen="ssh -i ~/.ssh/rsa_deploy itadmin@199.85.208.94" 85 | export PATH=~/.local/bin:$PATH 86 | #setxkbmap -layout us -variant intl 87 | wal -R -q && clear 88 | #echo "TF "$(( (`date +%s` - `date +%s -d '2003/08/1'`) / 86400 )) "CP "$(( (`date +%s` - `date +%s -d '2022/02/19'`) / 86400 )) "LT "$(( (`date +%s` - `date +%s -d '2022/08/15'`) / 86400 )) 89 | 90 | -------------------------------------------------------------------------------- /installer.sh: -------------------------------------------------------------------------------- 1 | # _______ _______ ______ _______ __ 2 | #| || _ || __ \| __|| |.-----. 3 | #| - _|| || <|__ || || _ | 4 | #|_______||___|___||___|__||_______||__|| __| 5 | # |__| 6 | # SpectrumOS - Embrace the Chromatic Symphony! 7 | # By: gibranlp 8 | # MIT licence 9 | 10 | # Variables 11 | 12 | VER="v1.0.1" 13 | BASE_PACKAGE_FILE="base_packages.txt" 14 | PIP_PACKAGES="pip.txt" 15 | AUR_PACKAGE_FILE="aur_packages.txt" 16 | 17 | # Check screen size 18 | screen_size=$(stty size 2>/dev/null || echo 24 80) 19 | rows=$(echo $screen_size | awk '{print $1}') 20 | columns=$(echo $screen_size | awk '{print $2}') 21 | 22 | # Dialog Screen 23 | r=$(( rows / 2 )) 24 | c=$(( columns / 2 )) 25 | 26 | # Check root 27 | echo "::: Checking for sudo ..." 28 | if [[ $EUID -eq 0 ]];then 29 | echo "::: Passed, Continuing..." 30 | else 31 | if [[ $(pacman -Qi sudo) ]];then 32 | echo ":::sudo is installed, please run this script as root." 33 | else 34 | echo "::: sudo package was not fund, please install Sudo" 35 | exit 1 36 | fi 37 | fi 38 | 39 | # Check for AUR helper installed 40 | AUR_MANAGERS=("yay" "aurman" "pikaur" "paru") 41 | AUR_MANAGER="" 42 | echo "::: Cheking for AUR manger" 43 | for MANAGER in "${AUR_MANAGERS[@]}"; do 44 | if command -v "$MANAGER" >/dev/null 2>&1; then 45 | AUR_MANAGER="$MANAGER" 46 | break 47 | fi 48 | done 49 | 50 | # Print the detected AUR package manager 51 | if [[ -n "$AUR_MANAGER" ]]; then 52 | echo "::: AUR Manager Found!: $AUR_MANAGER Continuing..." 53 | else 54 | echo "::: No AUR Manager found, please install one (yay, aurman, pikaur, paru)" 55 | exit 1 56 | fi 57 | 58 | installMenu(){ 59 | CHOICE=$(whiptail --menu "QARSlp Installation" ${r} ${c} 5 \ 60 | "Install Base Packages" " " \ 61 | "Install Pip Packages" " " \ 62 | "Install AUR Packages" " " \ 63 | "Copy all Dotfiles" " " \ 64 | "Post Installation" " " 3>&1 1>&2 2>&3) 65 | 66 | for CHOICE in $CHOICES; do 67 | case "$CHOICE" in 68 | "1") 69 | baseInstall >&2 70 | ;; 71 | "2") 72 | echo "Option 2 was selected" 73 | ;; 74 | "3") 75 | echo "Option 3 was selected" 76 | ;; 77 | "4") 78 | echo "Option 4 was selected" 79 | ;; 80 | *) 81 | echo "Unsupported item $CHOICE!" >&2 82 | exit 1 83 | ;; 84 | esac 85 | done 86 | 87 | } 88 | 89 | 90 | welcomeDialogs() { 91 | # Welcome message 92 | whiptail --msgbox --backtitle "QARSlp Installer $VER" --title "Installing QARSlp" "This script will install QARSlp into your PC. \n \n 93 | This script will work only on Arch Linux or Arch Linux based distributions. \n \n 94 | 95 | If you are running something else,you can try finding the packages in your distro to make it work.\n \n 96 | 97 | If you need help you can contact me through an issue in Github or at thisdoesnotwork@gibranlp.dev 98 | \n \n 99 | Please click OK to continue." ${r} ${c} 100 | } 101 | 102 | # Install Packages 103 | ## Base Packages 104 | installBasePackages() { 105 | while read -r package; do 106 | sudo pacman -S --noconfirm "$package" 107 | 108 | echo "::: " 109 | echo "Installing $package..." 110 | sleep 1 111 | done < "$BASE_PACKAGE_FILE" 112 | 113 | echo "::: " 114 | echo "Installation complete!" 115 | sleep 1 116 | } 117 | 118 | baseInstall() { 119 | whiptail --msgbox --backtitle "QARSlp Installer $VER" --title "Base Packages Install" "The base packages needed for QARSlp to work will be installed now \n \n Click OK to Continue" ${r} ${c} 120 | 121 | whiptail --title "Package Installation" --gauge "Installing ..." 6 50 0 < <(installBasePackages) 2>&1 122 | } 123 | 124 | ## Pip Packages 125 | installPipPackages() { 126 | TOTAL_PACKAGES=$(wc -l < "$PIP_PACKAGES") 127 | count=0 128 | 129 | while read -r PACKAGE; do 130 | ((count++)) 131 | 132 | pip install -r pip.txt --break-system-packages 133 | 134 | PERCENTAGE=$((count * 100 / TOTAL_PACKAGE)) 135 | 136 | echo "::: " 137 | echo "Installing $PACKAGE..." 138 | echo "$PERCENTAGE" 139 | sleep 1 140 | done < "$PIP_PACKAGES" 141 | 142 | echo "::: " 143 | echo "Installation complete!" 144 | sleep 1 145 | } 146 | 147 | pipInstall() { 148 | whiptail --msgbox --backtitle "QARSlp Installer $VER" --title "Pip Packages Install" "The pip packages needed for QARSlp to work will be installed now \n \n Click OK to Continue" ${r} ${c} 149 | 150 | whiptail --title "Pip Packages Installation" --gauge "Installing ..." 6 50 0 < <(installPipPackages) 2>&1 151 | } 152 | 153 | ## AUR Packages 154 | installAURPackages() { 155 | while read -r package; do 156 | $AUR_MANAGER -S --noconfirm "$package" 157 | 158 | echo "::: " 159 | echo "Installing $package..." 160 | sleep 1 161 | done < "$AUR_PACKAGE_FILE" 162 | 163 | echo "::: " 164 | echo "Installation complete!" 165 | sleep 1 166 | } 167 | 168 | AURInstall() { 169 | whiptail --msgbox --backtitle "QARSlp Installer $VER" --title "AUR Packages Install" "The AUR packages needed for QARSlp to work will be installed now \n \n Click OK to Continue" ${r} ${c} 170 | 171 | whiptail --title "Package Installation" --gauge "Installing ..." 6 50 0 < <(installAURPackages) 2>&1 172 | } 173 | 174 | ## Post Install 175 | postInstall(){ 176 | whiptail --title "File Selection" --checklist "Select files to copy:" 15 60 5 "${file_list[@]}" 3>&1 1>&2 2>&3 177 | } 178 | 179 | installMenu 180 | #welcomeDialogs 181 | #pipInstall 182 | #baseInstall 183 | #AURInstall 184 | #postInstall 185 | -------------------------------------------------------------------------------- /lightdm/lightdm-gtk-greeter.conf: -------------------------------------------------------------------------------- 1 | [greeter] 2 | background = /usr/local/backgrounds/background.png 3 | position = 20%,center 50%,center 4 | theme-name = FlatColor 5 | 6 | -------------------------------------------------------------------------------- /lightdm/lightdm.conf: -------------------------------------------------------------------------------- 1 | # 2 | # General configuration 3 | # 4 | # start-default-seat = True to always start one seat if none are defined in the configuration 5 | # greeter-user = User to run greeter as 6 | # minimum-display-number = Minimum display number to use for X servers 7 | # minimum-vt = First VT to run displays on 8 | # lock-memory = True to prevent memory from being paged to disk 9 | # user-authority-in-system-dir = True if session authority should be in the system location 10 | # guest-account-script = Script to be run to setup guest account 11 | # logind-check-graphical = True to on start seats that are marked as graphical by logind 12 | # log-directory = Directory to log information to 13 | # run-directory = Directory to put running state in 14 | # cache-directory = Directory to cache to 15 | # sessions-directory = Directory to find sessions 16 | # remote-sessions-directory = Directory to find remote sessions 17 | # greeters-directory = Directory to find greeters 18 | # backup-logs = True to move add a .old suffix to old log files when opening new ones 19 | # dbus-service = True if LightDM provides a D-Bus service to control it 20 | # 21 | [LightDM] 22 | #start-default-seat=true 23 | #greeter-user=lightdm 24 | #minimum-display-number=0 25 | #minimum-vt=7 # Setting this to a value < 7 implies security issues, see FS#46799 26 | #lock-memory=true 27 | #user-authority-in-system-dir=false 28 | #guest-account-script=guest-account 29 | #logind-check-graphical=true 30 | #log-directory=/var/log/lightdm 31 | run-directory=/run/lightdm 32 | #cache-directory=/var/cache/lightdm 33 | #sessions-directory=/usr/share/lightdm/sessions:/usr/share/xsessions:/usr/share/wayland-sessions 34 | #remote-sessions-directory=/usr/share/lightdm/remote-sessions 35 | #greeters-directory=$XDG_DATA_DIRS/lightdm/greeters:$XDG_DATA_DIRS/xgreeters 36 | #backup-logs=true 37 | #dbus-service=true 38 | 39 | # 40 | # Seat configuration 41 | # 42 | # Seat configuration is matched against the seat name glob in the section, for example: 43 | # [Seat:*] matches all seats and is applied first. 44 | # [Seat:seat0] matches the seat named "seat0". 45 | # [Seat:seat-thin-client*] matches all seats that have names that start with "seat-thin-client". 46 | # 47 | # type = Seat type (local, xremote) 48 | # pam-service = PAM service to use for login 49 | # pam-autologin-service = PAM service to use for autologin 50 | # pam-greeter-service = PAM service to use for greeters 51 | # xserver-command = X server command to run (can also contain arguments e.g. X -special-option) 52 | # xmir-command = Xmir server command to run (can also contain arguments e.g. Xmir -special-option) 53 | # xserver-config = Config file to pass to X server 54 | # xserver-layout = Layout to pass to X server 55 | # xserver-allow-tcp = True if TCP/IP connections are allowed to this X server 56 | # xserver-share = True if the X server is shared for both greeter and session 57 | # xserver-hostname = Hostname of X server (only for type=xremote) 58 | # xserver-display-number = Display number of X server (only for type=xremote) 59 | # xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true) 60 | # xdmcp-port = XDMCP UDP/IP port to communicate on 61 | # xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf) 62 | # greeter-session = Session to load for greeter 63 | # greeter-hide-users = True to hide the user list 64 | # greeter-allow-guest = True if the greeter should show a guest login option 65 | # greeter-show-manual-login = True if the greeter should offer a manual login option 66 | # greeter-show-remote-login = True if the greeter should offer a remote login option 67 | # user-session = Session to load for users 68 | # allow-user-switching = True if allowed to switch users 69 | # allow-guest = True if guest login is allowed 70 | # guest-session = Session to load for guests (overrides user-session) 71 | # session-wrapper = Wrapper script to run session with 72 | # greeter-wrapper = Wrapper script to run greeter with 73 | # guest-wrapper = Wrapper script to run guest sessions with 74 | # display-setup-script = Script to run when starting a greeter session (runs as root) 75 | # display-stopped-script = Script to run after stopping the display server (runs as root) 76 | # greeter-setup-script = Script to run when starting a greeter (runs as root) 77 | # session-setup-script = Script to run when starting a user session (runs as root) 78 | # session-cleanup-script = Script to run when quitting a user session (runs as root) 79 | # autologin-guest = True to log in as guest by default 80 | # autologin-user = User to log in with by default (overrides autologin-guest) 81 | # autologin-user-timeout = Number of seconds to wait before loading default user 82 | # autologin-session = Session to load for automatic login (overrides user-session) 83 | # autologin-in-background = True if autologin session should not be immediately activated 84 | # exit-on-failure = True if the daemon should exit if this seat fails 85 | # 86 | [Seat:*] 87 | #type=local 88 | #pam-service=lightdm 89 | #pam-autologin-service=lightdm-autologin 90 | #pam-greeter-service=lightdm-greeter 91 | #xserver-command=X 92 | #xmir-command=Xmir 93 | #xserver-config= 94 | #xserver-layout= 95 | #xserver-allow-tcp=false 96 | #xserver-share=true 97 | #xserver-hostname= 98 | #xserver-display-number= 99 | #xdmcp-manager= 100 | #xdmcp-port=177 101 | #xdmcp-key= 102 | #greeter-session=example-gtk-gnome 103 | #greeter-hide-users=false 104 | #greeter-allow-guest=true 105 | #greeter-show-manual-login=false 106 | #greeter-show-remote-login=true 107 | #user-session=default 108 | #allow-user-switching=true 109 | #allow-guest=true 110 | #guest-session= 111 | session-wrapper=/etc/lightdm/Xsession 112 | #greeter-wrapper= 113 | #guest-wrapper= 114 | #display-setup-script= 115 | #display-stopped-script= 116 | #greeter-setup-script= 117 | #session-setup-script= 118 | #session-cleanup-script= 119 | #autologin-guest=false 120 | #autologin-user= 121 | #autologin-user-timeout=0 122 | #autologin-in-background=false 123 | #autologin-session= 124 | #exit-on-failure=false 125 | 126 | # 127 | # XDMCP Server configuration 128 | # 129 | # enabled = True if XDMCP connections should be allowed 130 | # port = UDP/IP port to listen for connections on 131 | # listen-address = Host/address to listen for XDMCP connections (use all addresses if not present) 132 | # key = Authentication key to use for XDM-AUTHENTICATION-1 or blank to not use authentication (stored in keys.conf) 133 | # hostname = Hostname to report to XDMCP clients (defaults to system hostname if unset) 134 | # 135 | # The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn. Alternatively 136 | # it can be a word and the first 7 characters are used as the key. 137 | # 138 | [XDMCPServer] 139 | #enabled=false 140 | #port=177 141 | #listen-address= 142 | #key= 143 | #hostname= 144 | 145 | # 146 | # VNC Server configuration 147 | # 148 | # enabled = True if VNC connections should be allowed 149 | # command = Command to run Xvnc server with 150 | # port = TCP/IP port to listen for connections on 151 | # listen-address = Host/address to listen for VNC connections (use all addresses if not present) 152 | # width = Width of display to use 153 | # height = Height of display to use 154 | # depth = Color depth of display to use 155 | # 156 | [VNCServer] 157 | #enabled=false 158 | #command=Xvnc 159 | #port=5900 160 | #listen-address= 161 | #width=1024 162 | #height=768 163 | #depth=8 164 | -------------------------------------------------------------------------------- /logid.cfg: -------------------------------------------------------------------------------- 1 | // Logiops (Linux driver) configuration for Logitech MX Master 3. 2 | // Includes gestures, smartshift, DPI. 3 | // Tested on logid v0.2.3 - GNOME 3.38.4 on Zorin OS 16 Pro 4 | // What's working: 5 | // 1. Window snapping using Gesture button (Thumb) 6 | // 2. Forward Back Buttons 7 | // 3. Top button (Ratchet-Free wheel) 8 | // What's not working: 9 | // 1. Thumb scroll (H-scroll) 10 | // 2. Scroll button 11 | 12 | // File location: /etc/logid.cfg 13 | 14 | devices: ({ 15 | name: "Wireless Mouse MX Master 3"; 16 | 17 | smartshift: { 18 | on: true; 19 | threshold: 15; 20 | }; 21 | 22 | hiresscroll: { 23 | hires: true; 24 | invert: false; 25 | target: false; 26 | }; 27 | 28 | dpi: 1500; // max=4000 29 | 30 | buttons: ( 31 | // Forward button 32 | { 33 | cid: 0x56; 34 | action = { 35 | type: "Gestures"; 36 | gestures: ( 37 | { 38 | direction: "None"; 39 | mode: "OnRelease"; 40 | action = { 41 | type: "Keypress"; 42 | keys: [ "KEY_FORWARD" ]; 43 | } 44 | }, 45 | 46 | { 47 | direction: "Up"; 48 | mode: "OnRelease"; 49 | action = { 50 | type: "Keypress"; 51 | keys: [ "KEY_LEFTALT", "KEY_R" ]; 52 | } 53 | }, 54 | 55 | { 56 | direction: "Down"; 57 | mode: "OnRelease"; 58 | action = { 59 | type: "Keypress"; 60 | keys: [ "KEY_LEFTMETA", "KEY_ENTER" ]; 61 | } 62 | }, 63 | 64 | { 65 | direction: "Right"; 66 | mode: "OnRelease"; 67 | action = { 68 | type: "Keypress"; 69 | keys: [ "KEY_LEFTALT", "KEY_W" ]; 70 | } 71 | }, 72 | 73 | { 74 | direction: "Left"; 75 | mode: "OnRelease"; 76 | action = { 77 | type: "Keypress"; 78 | keys: [ "KEY_LEFTALT", "KEY_ENTER" ]; 79 | } 80 | } 81 | ); 82 | }; 83 | }, 84 | 85 | // Back button 86 | { 87 | cid: 0x53; 88 | action = { 89 | type: "Gestures"; 90 | gestures: ( 91 | { 92 | direction: "None"; 93 | mode: "OnRelease"; 94 | action = { 95 | type: "Keypress"; 96 | keys: [ "KEY_BACK" ]; 97 | } 98 | } 99 | ); 100 | }; 101 | }, 102 | 103 | // Gesture button (hold and move) 104 | { 105 | cid: 0xc3; 106 | action = { 107 | type: "Gestures"; 108 | gestures: ( 109 | { 110 | direction: "None"; 111 | mode: "OnRelease"; 112 | action = { 113 | type: "Keypress"; 114 | keys: [ "KEY_LEFTMETA" ]; // open activities overview 115 | } 116 | }, 117 | 118 | { 119 | direction: "Right"; 120 | mode: "OnRelease"; 121 | action = { 122 | type: "Keypress"; 123 | keys: [ "KEY_LEFTMETA", "KEY_RIGHT" ]; // snap window to right 124 | } 125 | }, 126 | 127 | { 128 | direction: "Left"; 129 | mode: "OnRelease"; 130 | action = { 131 | type: "Keypress"; 132 | keys: [ "KEY_LEFTMETA", "KEY_LEFT" ]; 133 | } 134 | }, 135 | 136 | { 137 | direction: "Up"; 138 | mode: "onRelease"; 139 | action = { 140 | type: "Keypress"; 141 | keys: [ "KEY_LEFTMETA", "KEY_UP" ]; // maximize window 142 | } 143 | }, 144 | 145 | { 146 | direction: "Down"; 147 | mode: "OnRelease"; 148 | action = { 149 | type: "Keypress"; 150 | keys: [ "KEY_LEFTMETA", "KEY_DOWN" ]; // minimize window 151 | } 152 | } 153 | ); 154 | }; 155 | }, 156 | 157 | // Top button 158 | { 159 | cid: 0xc4; 160 | action = { 161 | type: "Gestures"; 162 | gestures: ( 163 | { 164 | direction: "None"; 165 | mode: "OnRelease"; 166 | action = { 167 | type: "ToggleSmartShift"; 168 | } 169 | }, 170 | 171 | { 172 | direction: "Up"; 173 | mode: "OnRelease"; 174 | action = { 175 | type: "ChangeDPI"; 176 | inc: 1000, 177 | } 178 | }, 179 | 180 | { 181 | direction: "Down"; 182 | mode: "OnRelease"; 183 | action = { 184 | type: "ChangeDPI"; 185 | inc: -1000, 186 | } 187 | } 188 | ); 189 | }; 190 | } 191 | ); 192 | }); -------------------------------------------------------------------------------- /pip.txt: -------------------------------------------------------------------------------- 1 | cairocffi 2 | xcffib 3 | requests 4 | fontawesome 5 | ipc 6 | colorz 7 | colorthief 8 | haishoku 9 | dbus-next 10 | git+http://github.com/bcbnz/python-rofi.git 11 | taskwarrior-inthe.am 12 | -------------------------------------------------------------------------------- /pulse/system.pa: -------------------------------------------------------------------------------- 1 | #pulse!/usr/bin/pulseaudio -nF 2 | # 3 | # This file is part of PulseAudio. 4 | # 5 | # PulseAudio is free software; you can redistribute it and/or modify it 6 | # under the terms of the GNU Lesser General Public License as published by 7 | # the Free Software Foundation; either version 2 of the License, or 8 | # (at your option) any later version. 9 | # 10 | # PulseAudio is distributed in the hope that it will be useful, but 11 | # WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with PulseAudio; if not, see . 17 | 18 | # This startup script is used only if PulseAudio is started in system 19 | # mode. 20 | 21 | ### Automatically restore the volume of streams and devices 22 | load-module module-device-restore 23 | load-module module-stream-restore 24 | load-module module-card-restore 25 | 26 | ### Automatically load driver modules depending on the hardware available 27 | .ifexists module-udev-detect.so 28 | load-module module-udev-detect 29 | .else 30 | ### Use the static hardware detection module (for systems that lack udev/hal support) 31 | load-module module-detect 32 | .endif 33 | 34 | ### Load several protocols 35 | .ifexists module-esound-protocol-unix.so 36 | load-module module-esound-protocol-unix 37 | .endif 38 | load-module module-native-protocol-unix 39 | 40 | ### Automatically restore the default sink/source when changed by the user 41 | ### during runtime 42 | ### NOTE: This should be loaded as early as possible so that subsequent modules 43 | ### that look up the default sink/source get the right value 44 | load-module module-default-device-restore 45 | 46 | ### Make sure we always have a sink around, even if it is a null sink. 47 | load-module module-always-sink 48 | 49 | ### Automatically suspend sinks/sources that become idle for too long 50 | load-module module-suspend-on-idle 51 | 52 | ### Enable positioned event sounds 53 | load-module module-position-event-sounds 54 | 55 | ### Add support for Bluethooth Headsets 56 | load-module module-bluetooth-policy 57 | load-module module-bluetooth-discover 58 | load-module module-switch-on-connect 59 | 60 | ### Allow including a system.pa.d directory, which if present, can be used 61 | ### for additional configuration snippets. 62 | ### Note that those snippet files must have a .pa file extension, not .conf 63 | .nofail 64 | .include /etc/pulse/system.pa.d 65 | -------------------------------------------------------------------------------- /samba/smb.conf: -------------------------------------------------------------------------------- 1 | [Movies] 2 | path = /media/Files/Movies 3 | browsable = yes 4 | writable = yes 5 | read only = no 6 | force create mode = 0666 7 | force directory mode = 0777 8 | guest ok = yes 9 | 10 | [Series] 11 | path = /media/Files/Series 12 | browsable = yes 13 | writable = yes 14 | read only = no 15 | force create mode = 0666 16 | force directory mode = 0777 17 | guest ok = yes 18 | 19 | 20 | [Anime] 21 | path = /media/Files/Anime 22 | browsable = yes 23 | writable = yes 24 | read only = no 25 | force create mode = 0666 26 | force directory mode = 0777 27 | guest ok = yes 28 | -------------------------------------------------------------------------------- /screenshots/4k.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/4k.png -------------------------------------------------------------------------------- /screenshots/Backend1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Backend1.png -------------------------------------------------------------------------------- /screenshots/Backend2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Backend2.png -------------------------------------------------------------------------------- /screenshots/Color_picker1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Color_picker1.png -------------------------------------------------------------------------------- /screenshots/Color_picker2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Color_picker2.png -------------------------------------------------------------------------------- /screenshots/Colorthief2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Colorthief2.png -------------------------------------------------------------------------------- /screenshots/Colorthierf1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Colorthierf1.png -------------------------------------------------------------------------------- /screenshots/Colorz1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Colorz1.png -------------------------------------------------------------------------------- /screenshots/Colorz2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Colorz2.png -------------------------------------------------------------------------------- /screenshots/Haishoku1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Haishoku1.png -------------------------------------------------------------------------------- /screenshots/Haishoku2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Haishoku2.png -------------------------------------------------------------------------------- /screenshots/Launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Launcher.png -------------------------------------------------------------------------------- /screenshots/Lightdm1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Lightdm1.png -------------------------------------------------------------------------------- /screenshots/Lightdm2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Lightdm2.png -------------------------------------------------------------------------------- /screenshots/Lightdm3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Lightdm3.png -------------------------------------------------------------------------------- /screenshots/Multi_monitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Multi_monitor.png -------------------------------------------------------------------------------- /screenshots/Night_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Night_light.png -------------------------------------------------------------------------------- /screenshots/QARSlp1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/QARSlp1.png -------------------------------------------------------------------------------- /screenshots/QARSlp2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/QARSlp2.png -------------------------------------------------------------------------------- /screenshots/QARSlp3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/QARSlp3.png -------------------------------------------------------------------------------- /screenshots/Random_Wall.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Random_Wall.png -------------------------------------------------------------------------------- /screenshots/Screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Screenshot.png -------------------------------------------------------------------------------- /screenshots/Session.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Session.png -------------------------------------------------------------------------------- /screenshots/Shortcuts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Shortcuts.png -------------------------------------------------------------------------------- /screenshots/Slash1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Slash1.png -------------------------------------------------------------------------------- /screenshots/Slash2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Slash2.png -------------------------------------------------------------------------------- /screenshots/Theme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Theme.png -------------------------------------------------------------------------------- /screenshots/Wal1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Wal1.png -------------------------------------------------------------------------------- /screenshots/Wal2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Wal2.png -------------------------------------------------------------------------------- /screenshots/Wifi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/Wifi.png -------------------------------------------------------------------------------- /screenshots/bars.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/bars.gif -------------------------------------------------------------------------------- /screenshots/bckends.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/bckends.gif -------------------------------------------------------------------------------- /screenshots/calendar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/calendar.png -------------------------------------------------------------------------------- /screenshots/calendar1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/calendar1.png -------------------------------------------------------------------------------- /screenshots/calendar2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/calendar2.png -------------------------------------------------------------------------------- /screenshots/circles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/circles.png -------------------------------------------------------------------------------- /screenshots/color_picker.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/color_picker.gif -------------------------------------------------------------------------------- /screenshots/control-panel.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/control-panel.gif -------------------------------------------------------------------------------- /screenshots/control-panel.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/control-panel.mp4 -------------------------------------------------------------------------------- /screenshots/custom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/custom.png -------------------------------------------------------------------------------- /screenshots/dot-circles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/dot-circles.png -------------------------------------------------------------------------------- /screenshots/ethernet-ip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/ethernet-ip.png -------------------------------------------------------------------------------- /screenshots/ethernet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/ethernet.png -------------------------------------------------------------------------------- /screenshots/hd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/hd.png -------------------------------------------------------------------------------- /screenshots/kanji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/kanji.png -------------------------------------------------------------------------------- /screenshots/launcher.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/launcher.gif -------------------------------------------------------------------------------- /screenshots/lightdm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/lightdm.gif -------------------------------------------------------------------------------- /screenshots/low.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/low.png -------------------------------------------------------------------------------- /screenshots/nightlight.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/nightlight.gif -------------------------------------------------------------------------------- /screenshots/notifications.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/notifications.gif -------------------------------------------------------------------------------- /screenshots/numbers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/numbers.png -------------------------------------------------------------------------------- /screenshots/patreon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /screenshots/random-wallpaper.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/random-wallpaper.gif -------------------------------------------------------------------------------- /screenshots/randwall.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/randwall.gif -------------------------------------------------------------------------------- /screenshots/screenshot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/screenshot.gif -------------------------------------------------------------------------------- /screenshots/screenshot.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/screenshot.mp4 -------------------------------------------------------------------------------- /screenshots/select_wal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/select_wal.gif -------------------------------------------------------------------------------- /screenshots/session-menu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/session-menu.gif -------------------------------------------------------------------------------- /screenshots/shortcuts.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/shortcuts.gif -------------------------------------------------------------------------------- /screenshots/themes.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/themes.gif -------------------------------------------------------------------------------- /screenshots/wifi-ip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/wifi-ip.png -------------------------------------------------------------------------------- /screenshots/wifi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gibranlp/QARSlp/dc6f271c65a35e2c70af5d57234e7d1ba1d4077e/screenshots/wifi.png -------------------------------------------------------------------------------- /update.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # _______ _______ ______ _______ __ 3 | #| || _ || __ \| __|| |.-----. 4 | #| - _|| || <|__ || || _ | 5 | #|_______||___|___||___|__||_______||__|| __| 6 | # |__| 7 | # SpectrumOS - Embrace the Chromatic Symphony! 8 | # By: gibranlp 9 | # MIT licence 10 | # 11 | 12 | function install_new_packages() { 13 | packets=( 14 | ) 15 | 16 | for packet in "${packets[@]}"; do 17 | echo "Instalando --> ${packet}" 18 | sudo pacman -S "${packet}" --noconfirm --needed 19 | done 20 | } 21 | 22 | function aur_packages() { 23 | packets=( 24 | 'rofi-file-browser-extended-git' 25 | ) 26 | for packet in "${packets[@]}"; do 27 | echo "Instalando --> ${packet}" 28 | paru -S "${packet}" --noconfirm 29 | done 30 | } 31 | 32 | function update(){ 33 | cp -r ~/QARSlp/dotfiles/.config/rofi/* ~/.config/rofi/ 34 | cp -r ~/QARSlp/dotfiles/.config/qtile/* ~/.config/qtile/ 35 | cp ~/QARSlp/dotfiles/.shortcuts ~/ 36 | # cp -r ~/QARSlp/dotfiles/.local/bin/recorder ~/.local/bin/ 37 | cp -r ~/QARSlp/dotfiles/.local/bin/notesfi ~/.local/bin/ 38 | cp -r ~/QARSlp/dotfiles/.local/bin/wifi2 ~/.local/bin/ 39 | cp -r ~/QARSlp/dotfiles/.local/bin/recorder ~/.local/bin/ 40 | cp -r ~/QARSlp/dotfiles/.local/bin/selectwal ~/.local/bin/ 41 | cp -r ~/QARSlp/dotfiles/.local/bin/calculator ~/.local/bin/ 42 | cp -r ~/QARSlp/dotfiles/.local/bin/calendar ~/.local/bin/ 43 | cp -r ~/QARSlp/dotfiles/.local/bin/change_display ~/.local/bin/ 44 | cp -r ~/QARSlp/dotfiles/.local/bin/autostart ~/.local/bin/ 45 | cp -r ~/QARSlp/dotfiles/.local/bin/alwaystart ~/.local/bin/ 46 | cp -r ~/QARSlp/dotfiles/.local/bin/bluet ~/.local/bin/ 47 | cp -r ~/QARSlp/dotfiles/.local/bin/genwal ~/.local/bin/ 48 | cp -r ~/QARSlp/dotfiles/.local/bin/cleansys ~/.local/bin/ 49 | chmod +x ~/.local/bin/* 50 | # cp ~/QARSlp/dotfiles/.shortcuts ~/ 51 | 52 | cp ~/QARSlp/dotfiles/.config/picom/picom.conf ~/.config/picom/picom.conf 53 | cp ~/QARSlp/dotfiles/.zshrc ~/ 54 | cp ~/QARSlp/dotfiles/.config/dunst/dunstrc ~/.config/wal/templates 55 | cp ~/QARSlp/dotfiles/.config/flameshot/flameshot.ini ~/.config/wal/templates 56 | # cp ~/QARSlp/dotfiles/.config/cava/config ~/.config/wal/templates 57 | # cp ~/QARSlp/dotfiles/.config/ranger/rc.conf ~/.config/ranger/rc.conf 58 | # cp ~/QARSlp/dotfiles/.config/alacritty/alacritty.yml ~/.config/alacritty/alacritty.yml 59 | # cp ~/QARSlp/dotfiles/.config/gromit-mpx.ini ~/.config 60 | cp ~/QARSlp/dotfiles/.oh-my-zsh/themes/avit.zsh-theme ~/.oh-my-zsh/themes 61 | } 62 | 63 | #install_new_packages 64 | #aur_packages 65 | update --------------------------------------------------------------------------------