| @ -0,0 +1,66 @@ | |||
| Xft.dpi: 192 | |||
| Xft.autohint: 0 | |||
| Xft.lcdfilter: lcddefault | |||
| Xft.hintstyle: hintfull | |||
| Xft.hinting: 1 | |||
| Xft.antialias: 1 | |||
| Xft.rgba: rgb | |||
| rofi.dpi: 192 | |||
| !--------------------xdefauls | |||
| URxvt.font: xft:terminus:size=13 | |||
| URxvt.depth: 32 | |||
| urxvt*termName: rxvt | |||
| urxvt*scrollBar: false | |||
| urxvt*matcher.button: 1 | |||
| urxvt.transparent: false | |||
| urxvt.boldFont: | |||
| URxvt.letterSpace: -1 | |||
| Xft*dpi: 96 | |||
| Xft*antialias: true | |||
| Xft*hinting: true | |||
| Xft*hintstyle: hintfull | |||
| URxvt*cursorUnderline: true | |||
| Xft*rgba: rgb | |||
| URxvt*geometry: 160x45 | |||
| *internalBorder: 26 | |||
| URxvt*fading: 0 | |||
| URxvt*tintColor: #ffffff | |||
| URxvt*shading: 0 | |||
| URxvt*inheritPixmap: False | |||
| ! special | |||
| *.foreground: #aaaaaa | |||
| *.background: [95]#161b21 | |||
| *.cursorColor: #aaaaaa | |||
| ! black | |||
| *.color0: #9ea2a5 | |||
| *.color8: #9ea2a5 | |||
| ! red | |||
| *.color1: #8b6066 | |||
| *.color9: #8b6066 | |||
| ! green | |||
| *.color2: #9a7e62 | |||
| *.color10: #9a7e62 | |||
| ! yellow | |||
| *.color3: #e7d869 | |||
| *.color11: #e7d869 | |||
| ! blue | |||
| *.color4: #354f73 | |||
| *.color12: #354f73 | |||
| ! magenta | |||
| *.color5: #55465b | |||
| *.color13: #55465b | |||
| ! cyan | |||
| *.color6: #716467 | |||
| *.color14: #716467 | |||
| ! white | |||
| *.color7: #aaaaaa | |||
| *.color15: #a7a9a8 | |||
| @ -0,0 +1,3 @@ | |||
| export GDK_SCALE=2 | |||
| export GDK_DPI_SCALE=0.5 | |||
| export QT_AUTO_SCREEN_SCALE_FACTOR=1 | |||
| @ -0,0 +1,48 @@ | |||
| #!/bin/bash | |||
| sudo timedatectl set-ntp true | |||
| sudo hwclock --systohc | |||
| sudo reflector -c Switzerland -a 12 --sort rate --save /etc/pacman.d/mirrorlist | |||
| sudo pacman -Syy | |||
| sudo firewall-cmd --add-port=1025-65535/tcp --permanent | |||
| sudo firewall-cmd --add-port=1025-65535/udp --permanent | |||
| sudo firewall-cmd --reload | |||
| # sudo virsh net-autostart default | |||
| git clone https://aur.archlinux.org/pikaur.git | |||
| cd pikaur/ | |||
| makepkg -si --noconfirm | |||
| #pikaur -S --noconfirm lightdm-slick-greeter | |||
| #pikaur -S --noconfirm lightdm-settings | |||
| #pikaur -S --noconfirm polybar | |||
| #pikaur -S --noconfirm nerd-fonts-iosevka | |||
| #pikaur -S --noconfirm ttf-icomoon-feather | |||
| #pikaur -S --noconfirm system76-power | |||
| #sudo systemctl enable --now system76-power | |||
| #sudo system76-power graphics integrated | |||
| #pikaur -S --noconfirm gnome-shell-extension-system76-power-git | |||
| #pikaur -S --noconfirm auto-cpufreq | |||
| #sudo systemctl enable --now auto-cpufreq | |||
| echo "MAIN PACKAGES" | |||
| sleep 5 | |||
| sudo pacman -S --noconfirm xorg light-locker lightdm bspwm sxhkd firefox rxvt-unicode picom nitrogen lxappearance dmenu nautilus arandr simplescreenrecorder alsa-utils pulseaudio alsa-utils pulseaudio-alsa pavucontrol arc-gtk-theme arc-icon-theme obs-studio vlc dina-font tamsyn-font bdf-unifont ttf-bitstream-vera ttf-croscore ttf-dejavu ttf-droid gnu-free-fonts ttf-ibm-plex ttf-liberation ttf-linux-libertine noto-fonts font-bh-ttf ttf-roboto tex-gyre-fonts ttf-ubuntu-font-family ttf-anonymous-pro ttf-cascadia-code ttf-fantasque-sans-mono ttf-fira-mono ttf-hack ttf-fira-code ttf-inconsolata ttf-jetbrains-mono ttf-monofur adobe-source-code-pro-fonts cantarell-fonts inter-font ttf-opensans gentium-plus-font ttf-junicode adobe-source-han-sans-otc-fonts adobe-source-han-serif-otc-fonts noto-fonts-cjk noto-fonts-emoji ttf-font-awesome awesome-terminal-fonts archlinux-wallpaper rofi playerctl scrot obs-studio dunst pacman-contrib | |||
| #sudo flatpak install -y spotify | |||
| #sudo flatpak install -y kdenlive | |||
| sudo systemctl enable lightdm | |||
| mkdir -p .config/{bspwm,sxhkd,dunst} | |||
| install -Dm755 /usr/share/doc/bspwm/examples/bspwmrc ~/.config/bspwm/bspwmrc | |||
| install -Dm644 /usr/share/doc/bspwm/examples/sxhkdrc ~/.config/sxhkd/sxhkdrc | |||
| printf "\e[1;32mCHANGE NECESSARY FILES BEFORE REBOOT\e[0m" | |||
| @ -0,0 +1,28 @@ | |||
| #! /bin/sh | |||
| pgrep -x sxhkd > /dev/null || sxhkd & | |||
| setxkbmap ch & | |||
| light-locker & | |||
| /usr/bin/dunst & | |||
| bash /home/ermanno/.config/polybar/forest/launch.sh & | |||
| nitrogen --restore | |||
| xrandr --output DisplayPort-0 --mode 3840x2160 & | |||
| picom --no-fading-openclose & | |||
| bspc monitor DisplayPort-0 -d I II III IV V | |||
| bspc monitor DisplayPort-1 -d VI | |||
| bspc config border_width 0 | |||
| bspc config window_gap 12 | |||
| bspc config split_ratio 0.52 | |||
| bspc config borderless_monocle true | |||
| bspc config gapless_monocle true | |||
| bspc rule -a Gimp desktop='^8' state=floating follow=on | |||
| bspc rule -a firefox desktop='^2' | |||
| bspc rule -a Spotify desktop='^5' | |||
| bspc rule -a Virt-manager desktop='^4' state=floating | |||
| bspc rule -a Org.gnome.Nautilus state=floating | |||
| bspc rule -a Kupfer.py focus=on | |||
| bspc rule -a Screenkey manage=off | |||
| @ -0,0 +1,600 @@ | |||
| ;; ┌────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▄░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▄░█▀█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀░░▀░▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar] | |||
| fill = ⏽ | |||
| empty = ⏽ | |||
| indicator = ⏽ | |||
| ; Nerd font : , ⏽, 樂 籠 錄 , 雷 絛 | |||
| [module/volume] | |||
| type = internal/alsa | |||
| ; Soundcard to be used | |||
| ; Usually in the format hw:# where # is the card number | |||
| ; You can find the different card numbers in `/proc/asound/cards` | |||
| master-soundcard = default | |||
| speaker-soundcard = default | |||
| headphone-soundcard = default | |||
| ; Name of the master, speaker and headphone mixers | |||
| ; Use the following command to list available mixer controls: | |||
| ; $ amixer scontrols | sed -nr "s/.*'([[:alnum:]]+)'.*/\1/p" | |||
| ; If master, speaker or headphone-soundcard isn't the default, | |||
| ; use `amixer -c # scontrols` instead where # is the number | |||
| ; of the master, speaker or headphone soundcard respectively | |||
| ; | |||
| ; Default: Master | |||
| master-mixer = Master | |||
| ; Optionally define speaker and headphone mixers | |||
| ; Default: none | |||
| ;;speaker-mixer = Speaker | |||
| ; Default: none | |||
| ;;headphone-mixer = Headphone | |||
| ; NOTE: This is required if headphone_mixer is defined | |||
| ; Use the following command to list available device controls | |||
| ; $ amixer controls | sed -r "/CARD/\!d; s/.*=([0-9]+).*name='([^']+)'.*/printf '%3.0f: %s\n' '\1' '\2'/e" | sort | |||
| ; You may also need to use `amixer -c # controls` as above for the mixer names | |||
| ; Default: none | |||
| ;;headphone-id = 9 | |||
| ; Use volume mapping (similar to amixer -M and alsamixer), where the increase in volume is linear to the ear | |||
| ; Default: false | |||
| ;;mapped = true | |||
| ; Interval for volume increase/decrease (in percent points) | |||
| ; Default: 5 | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <label-volume> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-volume = <bar-volume> | |||
| format-volume-prefix = | |||
| format-volume-prefix-padding = 1 | |||
| format-volume-prefix-background = ${color.blue} | |||
| format-volume-prefix-foreground = ${color.foreground} | |||
| format-volume-background = ${color.background-alt} | |||
| format-volume-foreground = ${color.foreground} | |||
| format-volume-overline = ${color.background} | |||
| format-volume-underline = ${color.background} | |||
| ; Available tags: | |||
| ; <label-muted> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-muted = <label-muted> | |||
| format-muted-prefix = | |||
| format-muted-prefix-padding = 1 | |||
| format-muted-prefix-background = ${color.red} | |||
| format-muted-overline = ${color.background} | |||
| format-muted-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-volume = %percentage%% | |||
| label-volume-background = ${color.background-alt} | |||
| label-volume-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default | |||
| label-muted = "Muted" | |||
| label-muted-foreground = ${color.foreground} | |||
| label-muted-background = ${color.background-alt} | |||
| label-muted-padding = 1 | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-volume-0 = | |||
| ramp-volume-1 = | |||
| ramp-volume-2 = | |||
| ramp-volume-background = ${color.blue} | |||
| ramp-volume-padding = 1 | |||
| ; Only applies if <bar-volume> is used | |||
| bar-volume-format = " %fill%%indicator%%empty% " | |||
| bar-volume-width = 10 | |||
| bar-volume-gradient = false | |||
| bar-volume-indicator = ${bar.indicator} | |||
| bar-volume-indicator-foreground = ${color.foreground} | |||
| bar-volume-fill = ${bar.fill} | |||
| bar-volume-foreground-0 = ${color.foreground} | |||
| bar-volume-foreground-1 = ${color.foreground} | |||
| bar-volume-foreground-2 = ${color.foreground} | |||
| bar-volume-empty = ${bar.empty} | |||
| bar-volume-empty-foreground = ${color.gray} | |||
| ; If defined, it will replace <ramp-volume> when | |||
| ; headphones are plugged in to `headphone_control_numid` | |||
| ; If undefined, <ramp-volume> will be used for both | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-headphones-0 = | |||
| ramp-headphones-background = ${color.blue} | |||
| ramp-headphones-padding = 1 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/brightness] | |||
| ;type = internal/xbacklight | |||
| type = internal/backlight | |||
| ; Use the following command to list available cards: | |||
| ; $ ls -1 /sys/class/backlight/ | |||
| ;card = intel_backlight | |||
| card = amdgpu_bl0 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <ramp> | |||
| ; <bar> | |||
| format = <bar> | |||
| format-prefix = | |||
| format-prefix-padding = 1 | |||
| format-prefix-background = ${color.lime} | |||
| format-prefix-foreground = ${color.foreground} | |||
| format-background = ${color.background-alt} | |||
| format-foreground = ${color.foreground} | |||
| format-overline = ${color.background} | |||
| format-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label = %percentage%% | |||
| ; Only applies if <ramp> is used | |||
| ramp-0 = | |||
| ramp-1 = | |||
| ramp-2 = | |||
| ramp-3 = | |||
| ramp-4 = | |||
| ; Only applies if <bar> is used | |||
| bar-format = " %fill%%indicator%%empty% " | |||
| bar-width = 10 | |||
| bar-gradient = false | |||
| bar-indicator = ${bar.indicator} | |||
| bar-indicator-foreground = ${color.foreground} | |||
| bar-fill = ${bar.fill} | |||
| bar-foreground-0 = ${color.foreground} | |||
| bar-foreground-1 = ${color.foreground} | |||
| bar-foreground-2 = ${color.foreground} | |||
| bar-empty = ${bar.empty} | |||
| bar-empty-foreground = ${color.gray} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/battery_bar] | |||
| type = internal/battery | |||
| ; This is useful in case the battery never reports 100% charge | |||
| full-at = 99 | |||
| ; Use the following command to list batteries and adapters: | |||
| ; $ ls -1 /sys/class/power_supply/ | |||
| battery = BAT1 | |||
| adapter = ACAD | |||
| ; If an inotify event haven't been reported in this many | |||
| ; seconds, manually poll for new values. | |||
| ; | |||
| ; Needed as a fallback for systems that don't report events | |||
| ; on sysfs/procfs. | |||
| ; | |||
| ; Disable polling by setting the interval to 0. | |||
| ; | |||
| ; Default: 5 | |||
| poll-interval = 2 | |||
| ; see "man date" for details on how to format the time string | |||
| ; NOTE: if you want to use syntax tags here you need to use %%{...} | |||
| ; Default: %H:%M:%S | |||
| time-format = %H:%M | |||
| ; Available tags: | |||
| ; <label-charging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-charging> | |||
| format-charging = <bar-capacity> | |||
| format-charging-prefix = "" | |||
| format-charging-prefix-padding = 1 | |||
| format-charging-prefix-background = ${color.green} | |||
| format-charging-prefix-foreground = ${color.foreground} | |||
| format-charging-background = ${color.background-alt} | |||
| format-charging-foreground = ${color.foreground} | |||
| format-charging-overline = ${color.background} | |||
| format-charging-underline = ${color.background} | |||
| ; Available tags: | |||
| ; <label-discharging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-discharging> | |||
| format-discharging = <bar-capacity> | |||
| format-discharging-prefix = "" | |||
| format-discharging-prefix-padding = 1 | |||
| format-discharging-prefix-background = ${color.pink} | |||
| format-discharging-prefix-foreground = ${color.foreground} | |||
| format-discharging-background = ${color.background-alt} | |||
| format-discharging-foreground = ${color.foreground} | |||
| format-discharging-overline = ${color.background} | |||
| format-discharging-underline = ${color.background} | |||
| ; Available tags: | |||
| ; <label-full> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| format-full = <label-full> | |||
| format-full-prefix = "" | |||
| format-full-prefix-padding = 1 | |||
| format-full-prefix-background = ${color.red} | |||
| format-full-prefix-foreground = ${color.foreground} | |||
| format-full-background = ${color.background-alt} | |||
| format-full-foreground = ${color.foreground} | |||
| format-full-overline = ${color.background} | |||
| format-full-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current charge rate in watts) | |||
| label-charging = %percentage%% | |||
| label-charging-background = ${color.background-alt} | |||
| label-charging-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current discharge rate in watts) | |||
| label-discharging = %percentage%% | |||
| label-discharging-background = ${color.background-alt} | |||
| label-discharging-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-full = Full | |||
| label-full-background = ${color.background-alt} | |||
| label-full-padding = 1 | |||
| ; Only applies if <bar-capacity> is used | |||
| bar-capacity-format = " %fill%%indicator%%empty% " | |||
| bar-capacity-width = 10 | |||
| bar-capacity-gradient = false | |||
| bar-capacity-indicator = ${bar.indicator} | |||
| bar-capacity-indicator-foreground = ${color.foreground} | |||
| bar-capacity-fill = ${bar.fill} | |||
| bar-capacity-foreground-0 = ${color.foreground} | |||
| bar-capacity-foreground-1 = ${color.foreground} | |||
| bar-capacity-foreground-2 = ${color.foreground} | |||
| bar-capacity-empty = ${bar.empty} | |||
| bar-capacity-empty-foreground = ${color.gray} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/cpu_bar] | |||
| type = internal/cpu | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 0.5 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-load> | |||
| ; <ramp-load> | |||
| ; <ramp-coreload> | |||
| ;;format = <label> <ramp-coreload> | |||
| format = <bar-load><label> | |||
| format-prefix = | |||
| format-prefix-padding = 1 | |||
| format-prefix-background = ${color.teal} | |||
| format-prefix-foreground = ${color.foreground} | |||
| format-background = ${color.background-alt} | |||
| format-foreground = ${color.foreground} | |||
| format-overline = ${color.background} | |||
| format-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %percentage% (default) - total cpu load averaged over all cores | |||
| ; %percentage-sum% - Cumulative load on all cores | |||
| ; %percentage-cores% - load percentage for each core | |||
| ; %percentage-core[1-9]% - load percentage for specific core | |||
| label = "%percentage%% " | |||
| ; Only applies if <bar-load> is used | |||
| bar-load-format = " %fill%%indicator%%empty% " | |||
| bar-load-width = 10 | |||
| bar-load-gradient = false | |||
| bar-load-indicator = ${bar.indicator} | |||
| bar-load-indicator-foreground = ${color.foreground} | |||
| bar-load-fill = ${bar.fill} | |||
| bar-load-foreground-0 = ${color.foreground} | |||
| bar-load-foreground-1 = ${color.foreground} | |||
| bar-load-foreground-2 = ${color.foreground} | |||
| bar-load-empty = ${bar.empty} | |||
| bar-load-empty-foreground = ${color.gray} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/filesystem_bar] | |||
| type = internal/fs | |||
| ; Mountpoints to display | |||
| mount-0 = / | |||
| ;;mount-1 = /home | |||
| ;;mount-2 = /var | |||
| ; Seconds to sleep between updates | |||
| ; Default: 30 | |||
| interval = 30 | |||
| ; Display fixed precision values | |||
| ; Default: false | |||
| fixed-values = false | |||
| ; Spacing between entries | |||
| ; Default: 2 | |||
| ;;spacing = 4 | |||
| ; Available tags: | |||
| ; <label-mounted> (default) | |||
| ; <bar-free> | |||
| ; <bar-used> | |||
| ; <ramp-capacity> | |||
| format-mounted = <bar-used><label-mounted> | |||
| format-mounted-prefix = | |||
| format-mounted-prefix-padding = 1 | |||
| format-mounted-prefix-background = ${color.purple} | |||
| format-mounted-prefix-foreground = ${color.foreground} | |||
| format-mounted-background = ${color.background-alt} | |||
| format-mounted-foreground = ${color.foreground} | |||
| format-mounted-overline = ${color.background} | |||
| format-mounted-underline = ${color.background} | |||
| ; Available tags: | |||
| ; <label-unmounted> (default) | |||
| format-unmounted = <label-unmounted> | |||
| format-unmounted-prefix = | |||
| format-unmounted-prefix-padding = 1 | |||
| format-unmounted-prefix-background = ${color.red} | |||
| format-unmounted-prefix-foreground = ${color.foreground} | |||
| format-unmounted-background = ${color.background-alt} | |||
| format-unmounted-foreground = ${color.foreground} | |||
| format-unmounted-overline = ${color.background} | |||
| format-unmounted-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; %type% | |||
| ; %fsname% | |||
| ; %percentage_free% | |||
| ; %percentage_used% | |||
| ; %total% | |||
| ; %free% | |||
| ; %used% | |||
| ; Default: %mountpoint% %percentage_free%% | |||
| label-mounted = "%used%/%total% " | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; Default: %mountpoint% is not mounted | |||
| label-unmounted = " %mountpoint%: not mounted " | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-format = " %fill%%indicator%%empty% " | |||
| bar-used-width = 10 | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.foreground} | |||
| bar-used-foreground-1 = ${color.foreground} | |||
| bar-used-foreground-2 = ${color.foreground} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.gray} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/memory_bar] | |||
| type = internal/memory | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 2 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-used> | |||
| ; <bar-free> | |||
| ; <ramp-used> | |||
| ; <ramp-free> | |||
| ; <bar-swap-used> | |||
| ; <bar-swap-free> | |||
| ; <ramp-swap-used> | |||
| ; <ramp-swap-free> | |||
| format = <bar-used><label> | |||
| format-prefix = | |||
| format-prefix-padding = 1 | |||
| format-prefix-background = ${color.indigo} | |||
| format-prefix-foreground = ${color.foreground} | |||
| format-background = ${color.background-alt} | |||
| format-foreground = ${color.foreground} | |||
| format-overline = ${color.background} | |||
| format-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %percentage_used% (default) | |||
| ; %percentage_free% | |||
| ; %gb_used% | |||
| ; %gb_free% | |||
| ; %gb_total% | |||
| ; %mb_used% | |||
| ; %mb_free% | |||
| ; %mb_total% | |||
| ; %percentage_swap_used% | |||
| ; %percentage_swap_free% | |||
| ; %mb_swap_total% | |||
| ; %mb_swap_free% | |||
| ; %mb_swap_used% | |||
| ; %gb_swap_total% | |||
| ; %gb_swap_free% | |||
| ; %gb_swap_used% | |||
| label = "%mb_used% " | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-format = " %fill%%indicator%%empty% " | |||
| bar-used-width = 10 | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.foreground} | |||
| bar-used-foreground-1 = ${color.foreground} | |||
| bar-used-foreground-2 = ${color.foreground} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.gray} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/mpd_bar] | |||
| type = internal/mpd | |||
| ; Host where mpd is running (either ip or domain name) | |||
| ; Can also be the full path to a unix socket where mpd is running. | |||
| ;;host = 127.0.0.1 | |||
| ;;port = 6600 | |||
| ;;password = mysecretpassword | |||
| ; Seconds to sleep between progressbar/song timer sync | |||
| ; Default: 1 | |||
| interval = 1 | |||
| ; Available tags: | |||
| ; <label-song> (default) | |||
| ; <label-time> | |||
| ; <bar-progress> | |||
| ; <toggle> - gets replaced with <icon-(pause|play)> | |||
| ; <toggle-stop> - gets replaced with <icon-(stop|play)> | |||
| ; <icon-random> | |||
| ; <icon-repeat> | |||
| ; <icon-repeatone> (deprecated) | |||
| ; <icon-single> - Toggle playing only a single song. Replaces <icon-repeatone> | |||
| ; <icon-consume> | |||
| ; <icon-prev> | |||
| ; <icon-stop> | |||
| ; <icon-play> | |||
| ; <icon-pause> | |||
| ; <icon-next> | |||
| ; <icon-seekb> | |||
| ; <icon-seekf> | |||
| format-online = <label-song><bar-progress><label-time> | |||
| format-online-prefix = | |||
| format-online-prefix-padding = 1 | |||
| format-online-prefix-background = ${color.green} | |||
| format-online-prefix-foreground = ${color.foreground} | |||
| format-online-background = ${color.background-alt} | |||
| format-online-foreground = ${color.foreground} | |||
| format-online-overline = ${color.background} | |||
| format-online-underline = ${color.background} | |||
| ;format-playing = ${self.format-online} | |||
| ;format-paused = ${self.format-online} | |||
| ;format-stopped = ${self.format-online} | |||
| ; Available tags: | |||
| ; <label-offline> | |||
| format-offline = <label-offline> | |||
| format-offline-prefix = | |||
| format-offline-prefix-padding = 1 | |||
| format-offline-prefix-background = ${color.red} | |||
| format-offline-prefix-foreground = ${color.foreground} | |||
| format-offline-background = ${color.background-alt} | |||
| format-offline-foreground = ${color.foreground} | |||
| format-offline-overline = ${color.background} | |||
| format-offline-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %artist% | |||
| ; %album-artist% | |||
| ; %album% | |||
| ; %date% | |||
| ; %title% | |||
| ; Default: %artist% - %title% | |||
| label-song = " %artist% - %title%" | |||
| label-song-maxlen = 25 | |||
| label-song-ellipsis = true | |||
| ; Available tokens: | |||
| ; %elapsed% | |||
| ; %total% | |||
| ; Default: %elapsed% / %total% | |||
| label-time = "%elapsed% / %total% " | |||
| ; Available tokens: | |||
| ; None | |||
| label-offline = " Offline " | |||
| ; Only applies if <icon-X> is used | |||
| icon-play = | |||
| icon-pause = | |||
| icon-stop = | |||
| icon-next = | |||
| icon-prev = | |||
| icon-seekf = | |||
| icon-seekb = | |||
| icon-random = | |||
| icon-repeat = | |||
| icon-repeatone = | |||
| icon-single = | |||
| icon-consume = | |||
| ; Used to display the state of random/repeat/repeatone/single | |||
| ; Only applies if <icon-[random|repeat|repeatone|single]> is used | |||
| toggle-on-foreground = ${color.primary} | |||
| toggle-off-foreground = ${color.secondary} | |||
| ; Only applies if <bar-progress> is used | |||
| bar-progress-format = " %fill%%indicator%%empty% " | |||
| bar-progress-width = 10 | |||
| bar-progress-gradient = false | |||
| bar-progress-indicator = ${bar.indicator} | |||
| bar-progress-indicator-foreground = ${color.foreground} | |||
| bar-progress-fill = ${bar.fill} | |||
| bar-progress-foreground-0 = ${color.foreground} | |||
| bar-progress-foreground-1 = ${color.foreground} | |||
| bar-progress-foreground-2 = ${color.foreground} | |||
| bar-progress-empty = ${bar.empty} | |||
| bar-progress-empty-foreground = ${color.gray} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,39 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█░░░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░░░█░█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [color] | |||
| ;; Use pywal.sh in scripts directory to use colors from an image/wallpaper. | |||
| ;; main colors | |||
| background = #2f343f | |||
| background-alt = #C4C7C5 | |||
| foreground = #1C1E20 | |||
| foreground-alt = #C4C7C5 | |||
| primary = #B4BC67 | |||
| white = #FFFFFF | |||
| black = #000000 | |||
| red = #EC7875 | |||
| pink = #EC6798 | |||
| purple = #BE78D1 | |||
| blue = #75A4CD | |||
| cyan = #00C7DF | |||
| teal = #00B19F | |||
| green = #61C766 | |||
| lime = #B9C244 | |||
| yellow = #EBD369 | |||
| amber = #EDB83F | |||
| orange = #E57C46 | |||
| brown = #AC8476 | |||
| gray = #9E9E9E | |||
| indigo = #6C77BB | |||
| blue-gray = #6D8895 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,293 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/blocks/bars.ini | |||
| include-file = ~/.config/polybar/blocks/colors.ini | |||
| include-file = ~/.config/polybar/blocks/modules.ini | |||
| include-file = ~/.config/polybar/blocks/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = false | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 100% | |||
| height = 34 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 0% | |||
| offset-y = 0% | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.background} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| line-size = 5 | |||
| line-color = ${color.background} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-bottom-size = 0 | |||
| border-bottom-color = ${color.primary} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 0 | |||
| module-margin-right = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| font-0 = "Iosevka Nerd Font:size=10;4" | |||
| font-1 = "feather:size=10;3" | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| modules-left = sep launcher sep workspaces sep mpd | |||
| modules-center = title | |||
| modules-right = color-switch sep alsa sep battery sep network sep date sep sysmenu sep | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| # Add this script to your wm startup file. | |||
| DIR="$HOME/.config/polybar/blocks" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the bar | |||
| polybar -q main -c "$DIR"/config.ini & | |||
| @ -0,0 +1,309 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀█░█▀▄░█▀▀░█░█░▀█▀░█▀▀░█░█░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▀░█▀▄░█▀▀░▀▄▀░░█░░█▀▀░█▄█░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░░░▀░▀░▀▀▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/blocks/bars.ini | |||
| include-file = ~/.config/polybar/blocks/colors.ini | |||
| include-file = ~/.config/polybar/blocks/modules.ini | |||
| include-file = ~/.config/polybar/blocks/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = false | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 100% | |||
| height = 34 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 0% | |||
| offset-y = 0% | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.background} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| line-size = 5 | |||
| line-color = ${color.background} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-bottom-size = 0 | |||
| border-bottom-color = ${color.primary} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 0 | |||
| module-margin-right = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| font-0 = "Iosevka Nerd Font:size=10;4" | |||
| font-1 = "feather:size=10;3" | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar/top] | |||
| inherit = bar/main | |||
| offset-y = 10 | |||
| modules-center = sep launcher sep workspaces sep cpu sep memory sep mpd sep alsa sep battery sep network sep date sep sysmenu sep | |||
| enable-ipc = true | |||
| [bar/mid] | |||
| inherit = bar/main | |||
| offset-y = 54 | |||
| modules-center = volume sep brightness sep battery_bar sep cpu_bar sep filesystem_bar sep memory_bar sep mpd_bar | |||
| enable-ipc = true | |||
| [bar/bottom] | |||
| inherit = bar/main | |||
| offset-y = 98 | |||
| modules-center = title sep menu sep term files browser settings sep filesystem sep temperature sep color-switch sep keyboard sep pulseaudio sep backlight sep updates sep powermenu sep | |||
| enable-ipc = true | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| ;enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| DIR="$HOME/.config/polybar/blocks" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the preview bar | |||
| polybar -q top -c "$DIR"/preview.ini & | |||
| polybar -q mid -c "$DIR"/preview.ini & | |||
| polybar -q bottom -c "$DIR"/preview.ini & | |||
| @ -0,0 +1,117 @@ | |||
| #!/usr/bin/bash | |||
| # | |||
| # checkupdates: Safely print a list of pending updates. | |||
| # | |||
| # Copyright (c) 2013 Kyle Keen <keenerd@gmail.com> | |||
| # | |||
| # This program is free software; you can redistribute it and/or modify | |||
| # it under the terms of the GNU General Public License as published by | |||
| # the Free Software Foundation; either version 2 of the License, or | |||
| # (at your option) any later version. | |||
| # | |||
| # This program is distributed in the hope that it will be useful, | |||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
| # GNU General Public License for more details. | |||
| # | |||
| # You should have received a copy of the GNU General Public License | |||
| # along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| # | |||
| declare -r myname='checkupdates' | |||
| declare -r myver='1.0.0' | |||
| plain() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg2() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| ask() { | |||
| local mesg=$1; shift | |||
| printf "${BLUE}::${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&1 | |||
| } | |||
| warning() { | |||
| local mesg=$1; shift | |||
| printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| error() { | |||
| local mesg=$1; shift | |||
| printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| # check if messages are to be printed using color | |||
| unset ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if [[ -t 2 && ! $USE_COLOR = "n" ]]; then | |||
| # prefer terminal safe colored and bold text when tput is supported | |||
| if tput setaf 0 &>/dev/null; then | |||
| ALL_OFF="$(tput sgr0)" | |||
| BOLD="$(tput bold)" | |||
| BLUE="${BOLD}$(tput setaf 4)" | |||
| GREEN="${BOLD}$(tput setaf 2)" | |||
| RED="${BOLD}$(tput setaf 1)" | |||
| YELLOW="${BOLD}$(tput setaf 3)" | |||
| else | |||
| ALL_OFF="\e[1;0m" | |||
| BOLD="\e[1;1m" | |||
| BLUE="${BOLD}\e[1;34m" | |||
| GREEN="${BOLD}\e[1;32m" | |||
| RED="${BOLD}\e[1;31m" | |||
| YELLOW="${BOLD}\e[1;33m" | |||
| fi | |||
| fi | |||
| readonly ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if (( $# > 0 )); then | |||
| echo "${myname} v${myver}" | |||
| echo | |||
| echo "Safely print a list of pending updates" | |||
| echo | |||
| echo "Usage: ${myname}" | |||
| echo | |||
| echo 'Note: Export the "CHECKUPDATES_DB" variable to change the path of the temporary database.' | |||
| exit 0 | |||
| fi | |||
| if ! type -P fakeroot >/dev/null; then | |||
| error 'Cannot find the fakeroot binary.' | |||
| exit 1 | |||
| fi | |||
| if [[ -z $CHECKUPDATES_DB ]]; then | |||
| CHECKUPDATES_DB="${TMPDIR:-/tmp}/checkup-db-${USER}/" | |||
| fi | |||
| trap 'rm -f $CHECKUPDATES_DB/db.lck' INT TERM EXIT | |||
| DBPath="$(pacman-conf DBPath)" | |||
| if [[ -z "$DBPath" ]] || [[ ! -d "$DBPath" ]]; then | |||
| DBPath="/var/lib/pacman/" | |||
| fi | |||
| mkdir -p "$CHECKUPDATES_DB" | |||
| ln -s "${DBPath}/local" "$CHECKUPDATES_DB" &> /dev/null | |||
| if ! fakeroot -- pacman -Sy --dbpath "$CHECKUPDATES_DB" --logfile /dev/null &> /dev/null; then | |||
| error 'Cannot fetch updates' | |||
| exit 1 | |||
| fi | |||
| pacman -Qu --dbpath "$CHECKUPDATES_DB" 2> /dev/null | grep -v '\[.*\]' | |||
| exit 0 | |||
| # vim: set noet: | |||
| @ -0,0 +1,12 @@ | |||
| #!/usr/bin/env bash | |||
| FILE="$HOME/.config/polybar/blocks/scripts/rofi/colors.rasi" | |||
| # random accent color | |||
| COLORS=('#EC7875' '#EC6798' '#BE78D1' '#75A4CD' '#00C7DF' '#00B19F' '#61C766' \ | |||
| '#B9C244' '#EBD369' '#EDB83F' '#E57C46' '#AC8476' '#6C77BB' '#6D8895') | |||
| AC="${COLORS[$(( $RANDOM % 14 ))]}" | |||
| sed -i -e "s/ac: .*/ac: ${AC}FF;/g" $FILE | |||
| sed -i -e "s/se: .*/se: ${AC}40;/g" $FILE | |||
| rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/polybar/blocks/scripts/rofi/launcher.rasi | |||
| @ -0,0 +1,94 @@ | |||
| #!/usr/bin/env bash | |||
| ## Author : Aditya Shakya | |||
| ## Mail : adi1090x@gmail.com | |||
| ## Github : @adi1090x | |||
| ## Twitter : @adi1090x | |||
| dir="~/.config/polybar/blocks/scripts/rofi" | |||
| uptime=$(uptime -p | sed -e 's/up //g') | |||
| rofi_command="rofi -theme $dir/powermenu.rasi" | |||
| # Options | |||
| shutdown=" Shutdown" | |||
| reboot=" Restart" | |||
| lock=" Lock" | |||
| suspend=" Sleep" | |||
| logout=" Logout" | |||
| # Confirmation | |||
| confirm_exit() { | |||
| rofi -dmenu\ | |||
| -i\ | |||
| -no-fixed-num-lines\ | |||
| -p "Are You Sure? : "\ | |||
| -theme $dir/confirm.rasi | |||
| } | |||
| # Message | |||
| msg() { | |||
| rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" | |||
| } | |||
| # Variable passed to rofi | |||
| options="$lock\n$suspend\n$logout\n$reboot\n$shutdown" | |||
| chosen="$(echo -e "$options" | $rofi_command -p "Uptime: $uptime" -dmenu -selected-row 0)" | |||
| case $chosen in | |||
| $shutdown) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl poweroff | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $reboot) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl reboot | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $lock) | |||
| if [[ -f /usr/bin/i3lock ]]; then | |||
| i3lock | |||
| elif [[ -f /usr/bin/betterlockscreen ]]; then | |||
| betterlockscreen -l | |||
| fi | |||
| ;; | |||
| $suspend) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| mpc -q pause | |||
| amixer set Master mute | |||
| systemctl suspend | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $logout) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| if [[ "$DESKTOP_SESSION" == "Openbox" ]]; then | |||
| openbox --exit | |||
| elif [[ "$DESKTOP_SESSION" == "bspwm" ]]; then | |||
| bspc quit | |||
| elif [[ "$DESKTOP_SESSION" == "i3" ]]; then | |||
| i3-msg exit | |||
| fi | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| esac | |||
| @ -0,0 +1,11 @@ | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #2f343fFF; | |||
| bga: #C4C7C5FF; | |||
| fga: #C4C7C5FF; | |||
| fg: #1C1E20FF; | |||
| ac: #EBD369FF; | |||
| se: #EBD36940; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bg; | |||
| text-color: @fga; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 210px; | |||
| padding: 25px; | |||
| border: 0px 0px 4px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @ac; | |||
| } | |||
| @ -0,0 +1,115 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 550px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @ac; | |||
| text-color: @fg; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 6px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ prompt, entry ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 2; | |||
| lines: 8; | |||
| spacing: 6px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 6px; | |||
| padding: 6px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fga; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 3px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fga; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bg; | |||
| text-color: @fga; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 320px; | |||
| padding: 25px; | |||
| border: 0px 0px 4px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @ac; | |||
| } | |||
| @ -0,0 +1,123 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 400px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @ac; | |||
| text-color: @fg; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 6px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 8; | |||
| spacing: 6px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 6px; | |||
| padding: 6px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fga; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 3px 3px 3px -12px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fga; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,123 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 300px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @ac; | |||
| text-color: @fg; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 6px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 6px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 6px; | |||
| padding: 6px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fga; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 3px 3px 3px -23px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fga; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,123 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 300px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 6px 7px 4px 7px; | |||
| background-color: @ac; | |||
| text-color: @fg; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 6px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, entry ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 6px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 6px; | |||
| padding: 6px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fga; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 3px 3px 3px -23px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fga; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,15 @@ | |||
| #!/usr/bin/env bash | |||
| SDIR="$HOME/.config/polybar/blocks/scripts" | |||
| # Launch Rofi | |||
| MENU="$(rofi -no-config -no-lazy-grab -sep "|" -dmenu -i -p '' \ | |||
| -theme $SDIR/rofi/styles.rasi \ | |||
| <<< " Default| Nord| Gruvbox| Adapta| Cherry|")" | |||
| case "$MENU" in | |||
| *Default) "$SDIR"/styles.sh --default ;; | |||
| *Nord) "$SDIR"/styles.sh --nord ;; | |||
| *Gruvbox) "$SDIR"/styles.sh --gruvbox ;; | |||
| *Adapta) "$SDIR"/styles.sh --adapta ;; | |||
| *Cherry) "$SDIR"/styles.sh --cherry ;; | |||
| esac | |||
| @ -0,0 +1,74 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/blocks/colors.ini" | |||
| RFILE="$HOME/.config/polybar/blocks/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = $BG/g" $PFILE | |||
| sed -i -e "s/background-alt = #.*/background-alt = $BGA/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = $FGA/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: ${BG}FF; | |||
| bga: ${BGA}FF; | |||
| fga: ${FGA}FF; | |||
| fg: ${FG}FF; | |||
| ac: ${AC}FF; | |||
| se: ${AC}40; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--default" ]]; then | |||
| BG="#2f343f" | |||
| BGA="#C4C7C5" | |||
| FGA="#C4C7C5" | |||
| FG="#1C1E20" | |||
| AC="#B4BC67" | |||
| change_color | |||
| elif [[ $1 = "--nord" ]]; then | |||
| BG="#3B4252" | |||
| BGA="#4C566A" | |||
| FGA="#E5E9F0" | |||
| FG="#ECEFF4" | |||
| AC="#A3BE8C" | |||
| change_color | |||
| elif [[ $1 = "--gruvbox" ]]; then | |||
| BG="#282828" | |||
| BGA="#EBDBB2" | |||
| FGA="#EBDBB2" | |||
| FG="#282828" | |||
| AC="#CC241D" | |||
| change_color | |||
| elif [[ $1 = "--adapta" ]]; then | |||
| BG="#243035" | |||
| BGA="#38444A" | |||
| FGA="#FDF6E3" | |||
| FG="#FFFFFF" | |||
| AC="#4DD0E1" | |||
| change_color | |||
| elif [[ $1 = "--cherry" ]]; then | |||
| BG="#1F1626" | |||
| BGA="#423949" | |||
| FGA="#FFFFFF" | |||
| FG="#FFFFFF" | |||
| AC="#D94085" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --default --nord --gruvbox --adapta --cherry | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,45 @@ | |||
| #!/usr/bin/env bash | |||
| NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg | |||
| get_total_updates() { UPDATES=$(checkupdates 2>/dev/null | wc -l); } | |||
| while true; do | |||
| get_total_updates | |||
| # notify user of updates | |||
| if hash notify-send &>/dev/null; then | |||
| if (( UPDATES > 50 )); then | |||
| notify-send -u critical -i $NOTIFY_ICON \ | |||
| "You really need to update!!" "$UPDATES New packages" | |||
| elif (( UPDATES > 25 )); then | |||
| notify-send -u normal -i $NOTIFY_ICON \ | |||
| "You should update soon" "$UPDATES New packages" | |||
| elif (( UPDATES > 2 )); then | |||
| notify-send -u low -i $NOTIFY_ICON \ | |||
| "$UPDATES New packages" | |||
| fi | |||
| fi | |||
| # when there are updates available | |||
| # every 10 seconds another check for updates is done | |||
| while (( UPDATES > 0 )); do | |||
| if (( UPDATES == 1 )); then | |||
| echo "$UPDATES" | |||
| elif (( UPDATES > 1 )); then | |||
| echo "$UPDATES" | |||
| else | |||
| echo "None" | |||
| fi | |||
| sleep 10 | |||
| get_total_updates | |||
| done | |||
| # when no updates are available, use a longer loop, this saves on CPU | |||
| # and network uptime, only checking once every 30 min for new updates | |||
| while (( UPDATES == 0 )); do | |||
| echo "None" | |||
| sleep 1800 | |||
| get_total_updates | |||
| done | |||
| done | |||
| @ -0,0 +1,292 @@ | |||
| ;; ┌──────────────────────────────────────────────────────────────────────────────-----┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█░█░█▀▀░█▀▀░█▀▄░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ │ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░▀▀█░█▀▀░█▀▄░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ │ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ │ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └──────────────────────────────────────────────────────────────────────────────-----┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/updates] | |||
| type = custom/script | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; Command to be executed (using "/usr/bin/env sh -c [command]") | |||
| exec = ~/.config/polybar/blocks/scripts/updates.sh | |||
| ; Conditional command that, if defined, needs to exit successfully | |||
| ; before the main exec command is invoked. | |||
| ; Default: "" | |||
| ;;exec-if = "" | |||
| ; Will the script output continous content? | |||
| ; Default: false | |||
| tail = true | |||
| ; Seconds to sleep between updates | |||
| ; Default: 2 (0 if `tail = true`) | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <output> - deprecated | |||
| ; <label> (default) | |||
| format = <label> | |||
| format-prefix = | |||
| format-prefix-background = ${color.yellow} | |||
| format-prefix-padding = 1 | |||
| format-overline = ${color.background} | |||
| format-underline = ${color.background} | |||
| ; Available tokens: | |||
| ; %output% | |||
| ; Default: %output% | |||
| label = %output% | |||
| label-background = ${color.background-alt} | |||
| label-padding = 1 | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c [command]" | |||
| click-left = exo-open --launch TerminalEmulator & | |||
| click-right = exo-open --launch TerminalEmulator & | |||
| ;;double-click-left = echo double left %counter% | |||
| ;;double-click-middle = echo double middle %counter% | |||
| ;;double-click-right = echo double right %counter% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c [command]" | |||
| ;;scroll-up = echo scroll up %counter% | |||
| ;;scroll-down = echo scroll down %counter% | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/launcher] | |||
| type = custom/text | |||
| content-prefix = | |||
| content-prefix-background = ${color.teal} | |||
| content-prefix-padding = 1 | |||
| content = " Menu " | |||
| content-background = ${color.background-alt} | |||
| content-foreground = ${color.foreground} | |||
| content-overline = ${color.background} | |||
| content-underline = ${color.background} | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| click-left = ~/.config/polybar/blocks/scripts/launcher.sh & | |||
| ;;click-middle = ~/.config/polybar/blocks/scripts/launcher-full | |||
| click-right = ~/.config/polybar/blocks/scripts/style-switch.sh & | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| ;;scroll-up = ~/.config/polybar/blocks/scripts/launcher.sh & | |||
| ;;scroll-down = ~/.config/polybar/blocks/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/sysmenu] | |||
| type = custom/text | |||
| content-prefix = | |||
| content-prefix-background = ${color.cyan} | |||
| content-prefix-padding = 1 | |||
| content = " System " | |||
| content-background = ${color.background-alt} | |||
| content-foreground = ${color.foreground} | |||
| content-overline = ${color.background} | |||
| content-underline = ${color.background} | |||
| click-left = ~/.config/polybar/blocks/scripts/powermenu.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/color-switch] | |||
| type = custom/text | |||
| content-prefix = | |||
| content-prefix-background = ${color.orange} | |||
| content-prefix-padding = 1 | |||
| content = " Style " | |||
| content-background = ${color.background-alt} | |||
| content-foreground = ${color.foreground} | |||
| content-overline = ${color.background} | |||
| content-underline = ${color.background} | |||
| click-left = ~/.config/polybar/blocks/scripts/style-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/sep] | |||
| type = custom/text | |||
| content = | | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.background} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/apps] | |||
| type = custom/text | |||
| content-overline = ${color.background} | |||
| content-underline = ${color.background} | |||
| content-padding = 1 | |||
| [module/term] | |||
| inherit = module/apps | |||
| content = | |||
| content-background = ${color.blue-gray} | |||
| content-foreground = ${color.foreground} | |||
| click-left = termite & | |||
| click-middle = urxvt & | |||
| click-right = xfce4-terminal & | |||
| [module/files] | |||
| inherit = module/apps | |||
| content = | |||
| content-background = ${color.blue} | |||
| content-foreground = ${color.foreground} | |||
| click-left = thunar & | |||
| click-right = pcmanfm & | |||
| [module/browser] | |||
| inherit = module/apps | |||
| content = | |||
| content-background = ${color.orange} | |||
| content-foreground = ${color.foreground} | |||
| click-left = firefox & | |||
| click-right = chromium & | |||
| [module/settings] | |||
| inherit = module/apps | |||
| content = | |||
| content-background = ${color.teal} | |||
| content-foreground = ${color.foreground} | |||
| click-left = xfce4-settings-manager & | |||
| click-right = lxappearance & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/powermenu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = " Reboot |" | |||
| menu-0-0-background = ${color.background-alt} | |||
| menu-0-0-exec = menu-open-1 | |||
| menu-0-1 = " Shutdown " | |||
| menu-0-1-background = ${color.background-alt} | |||
| menu-0-1-exec = menu-open-2 | |||
| menu-1-0 = " Back |" | |||
| menu-1-0-background = ${color.background-alt} | |||
| menu-1-0-exec = menu-open-0 | |||
| menu-1-1 = " Reboot " | |||
| menu-1-1-background = ${color.background-alt} | |||
| menu-1-1-exec = systemctl reboot | |||
| menu-2-0 = " Shutdown |" | |||
| menu-2-0-background = ${color.background-alt} | |||
| menu-2-0-exec = systemctl poweroff | |||
| menu-2-1 = " Back " | |||
| menu-2-1-background = ${color.background-alt} | |||
| menu-2-1-exec = menu-open-0 | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle><menu> | |||
| format-overline = ${color.background} | |||
| format-underline = ${color.background} | |||
| label-open = | |||
| label-open-background = ${color.cyan} | |||
| label-open-padding = 1 | |||
| label-close = | |||
| label-close-background = ${color.red} | |||
| label-close-padding = 1 | |||
| ; Optional item separator | |||
| ; Default: none | |||
| ;label-separator = " | " | |||
| ;label-separator-foreground = ${color.foreground} | |||
| ;label-separator-background = ${color.background-alt} | |||
| ;;label-open-foreground = ${color.foreground} | |||
| ;;label-close-foreground = ${color.background} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/menu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 =" Menu | " | |||
| menu-0-0-background = ${color.background-alt} | |||
| menu-0-0-exec = ~/.config/polybar/blocks/scripts/launcher.sh & | |||
| menu-0-1 =" Files | " | |||
| menu-0-1-background = ${color.background-alt} | |||
| menu-0-1-exec = thunar & | |||
| menu-0-2 =" Terminal | " | |||
| menu-0-2-background = ${color.background-alt} | |||
| menu-0-2-exec = termite & | |||
| menu-0-3 =" Browser " | |||
| menu-0-3-background = ${color.background-alt} | |||
| menu-0-3-exec = firefox & | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle><menu> | |||
| format-overline = ${color.background} | |||
| format-underline = ${color.background} | |||
| label-open = | |||
| label-open-background = ${color.yellow} | |||
| label-open-padding = 1 | |||
| label-close = | |||
| label-close-background = ${color.red} | |||
| label-close-padding = 1 | |||
| ; Optional item separator | |||
| ; Default: none | |||
| ;label-separator = " | " | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,534 @@ | |||
| ;; ┌────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▄░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▄░█▀█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀░░▀░▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar] | |||
| fill = | |||
| empty = | |||
| indicator = ⏽ | |||
| ; Nerd font : , ⏽, 樂 籠 錄 , 雷 絛 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/volume] | |||
| type = internal/alsa | |||
| ; Soundcard to be used | |||
| ; Usually in the format hw:# where # is the card number | |||
| ; You can find the different card numbers in `/proc/asound/cards` | |||
| master-soundcard = default | |||
| speaker-soundcard = default | |||
| headphone-soundcard = default | |||
| ; Name of the master, speaker and headphone mixers | |||
| ; Use the following command to list available mixer controls: | |||
| ; $ amixer scontrols | sed -nr "s/.*'([[:alnum:]]+)'.*/\1/p" | |||
| ; If master, speaker or headphone-soundcard isn't the default, | |||
| ; use `amixer -c # scontrols` instead where # is the number | |||
| ; of the master, speaker or headphone soundcard respectively | |||
| ; | |||
| ; Default: Master | |||
| master-mixer = Master | |||
| ; Optionally define speaker and headphone mixers | |||
| ; Default: none | |||
| ;;speaker-mixer = Speaker | |||
| ; Default: none | |||
| ;;headphone-mixer = Headphone | |||
| ; NOTE: This is required if headphone_mixer is defined | |||
| ; Use the following command to list available device controls | |||
| ; $ amixer controls | sed -r "/CARD/\!d; s/.*=([0-9]+).*name='([^']+)'.*/printf '%3.0f: %s\n' '\1' '\2'/e" | sort | |||
| ; You may also need to use `amixer -c # controls` as above for the mixer names | |||
| ; Default: none | |||
| ;;headphone-id = 9 | |||
| ; Use volume mapping (similar to amixer -M and alsamixer), where the increase in volume is linear to the ear | |||
| ; Default: false | |||
| ;;mapped = true | |||
| ; Interval for volume increase/decrease (in percent points) | |||
| ; Default: 5 | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <label-volume> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-volume = <ramp-volume> <bar-volume> | |||
| format-volume-background = ${color.shade6} | |||
| format-volume-padding = 2 | |||
| ; Available tags: | |||
| ; <label-muted> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-muted = <label-muted> | |||
| format-muted-prefix = | |||
| format-muted-prefix-font = 2 | |||
| format-muted-background = ${color.shade6} | |||
| format-muted-padding = 2 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-volume = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default | |||
| label-muted = " Muted" | |||
| label-muted-foreground = ${color.foreground} | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-volume-0 = | |||
| ramp-volume-1 = | |||
| ramp-volume-2 = | |||
| ramp-volume-font = 2 | |||
| ; Only applies if <bar-volume> is used | |||
| bar-volume-width = 10 | |||
| bar-volume-gradient = false | |||
| bar-volume-indicator = ${bar.indicator} | |||
| bar-volume-indicator-foreground = ${color.foreground} | |||
| bar-volume-fill = ${bar.fill} | |||
| bar-volume-foreground-0 = ${color.foreground} | |||
| bar-volume-foreground-1 = ${color.foreground} | |||
| bar-volume-foreground-2 = ${color.foreground} | |||
| bar-volume-empty = ${bar.empty} | |||
| bar-volume-empty-foreground = ${color.foreground} | |||
| ; If defined, it will replace <ramp-volume> when | |||
| ; headphones are plugged in to `headphone_control_numid` | |||
| ; If undefined, <ramp-volume> will be used for both | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-headphones-0 = | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/brightness] | |||
| ;type = internal/xbacklight | |||
| type = internal/backlight | |||
| ; Use the following command to list available cards: | |||
| ; $ ls -1 /sys/class/backlight/ | |||
| ;card = intel_backlight | |||
| card = amdgpu_bl0 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <ramp> | |||
| ; <bar> | |||
| format = <ramp> <bar> | |||
| format-background = ${color.shade7} | |||
| format-padding = 2 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label = %percentage%% | |||
| ; Only applies if <ramp> is used | |||
| ramp-0 = | |||
| ramp-1 = | |||
| ramp-2 = | |||
| ramp-3 = | |||
| ramp-4 = | |||
| ramp-font = 2 | |||
| ; Only applies if <bar> is used | |||
| bar-width = 10 | |||
| bar-gradient = false | |||
| bar-indicator = ${bar.indicator} | |||
| bar-indicator-foreground = ${color.foreground} | |||
| bar-fill = ${bar.fill} | |||
| bar-foreground-0 = ${color.foreground} | |||
| bar-foreground-1 = ${color.foreground} | |||
| bar-foreground-2 = ${color.foreground} | |||
| bar-empty = ${bar.empty} | |||
| bar-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/battery_bar] | |||
| type = internal/battery | |||
| ; This is useful in case the battery never reports 100% charge | |||
| full-at = 99 | |||
| ; Use the following command to list batteries and adapters: | |||
| ; $ ls -1 /sys/class/power_supply/ | |||
| battery = BAT1 | |||
| adapter = ACAD | |||
| ; If an inotify event haven't been reported in this many | |||
| ; seconds, manually poll for new values. | |||
| ; | |||
| ; Needed as a fallback for systems that don't report events | |||
| ; on sysfs/procfs. | |||
| ; | |||
| ; Disable polling by setting the interval to 0. | |||
| ; | |||
| ; Default: 5 | |||
| poll-interval = 2 | |||
| ; see "man date" for details on how to format the time string | |||
| ; NOTE: if you want to use syntax tags here you need to use %%{...} | |||
| ; Default: %H:%M:%S | |||
| time-format = %H:%M | |||
| ; Available tags: | |||
| ; <label-charging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-charging> | |||
| format-charging = <bar-capacity> | |||
| format-charging-prefix = " " | |||
| format-charging-prefix-font = 2 | |||
| format-charging-background = ${color.shade5} | |||
| format-charging-padding = 2 | |||
| ; Available tags: | |||
| ; <label-discharging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-discharging> | |||
| format-discharging = <bar-capacity> | |||
| format-discharging-prefix = " " | |||
| format-discharging-prefix-font = 2 | |||
| format-discharging-background = ${color.shade5} | |||
| format-discharging-padding = 2 | |||
| ; Available tags: | |||
| ; <label-full> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| format-full = <label-full> | |||
| format-full-prefix = " " | |||
| format-full-prefix-font = 2 | |||
| format-full-background = ${color.shade5} | |||
| format-full-padding = 2 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current charge rate in watts) | |||
| label-charging = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current discharge rate in watts) | |||
| label-discharging = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-full = "Full" | |||
| ; Only applies if <bar-capacity> is used | |||
| bar-capacity-width = 10 | |||
| bar-capacity-gradient = false | |||
| bar-capacity-indicator = ${bar.indicator} | |||
| bar-capacity-indicator-foreground = ${color.foreground} | |||
| bar-capacity-fill = ${bar.fill} | |||
| bar-capacity-foreground-0 = ${color.foreground} | |||
| bar-capacity-foreground-1 = ${color.foreground} | |||
| bar-capacity-foreground-2 = ${color.foreground} | |||
| bar-capacity-empty = ${bar.empty} | |||
| bar-capacity-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/cpu_bar] | |||
| type = internal/cpu | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 0.5 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-load> | |||
| ; <ramp-load> | |||
| ; <ramp-coreload> | |||
| ;;format = <label> <ramp-coreload> | |||
| format = <bar-load> <label> | |||
| format-prefix = " " | |||
| format-prefix-font = 2 | |||
| format-background = ${color.shade7} | |||
| format-padding = 2 | |||
| ; Available tokens: | |||
| ; %percentage% (default) - total cpu load averaged over all cores | |||
| ; %percentage-sum% - Cumulative load on all cores | |||
| ; %percentage-cores% - load percentage for each core | |||
| ; %percentage-core[1-9]% - load percentage for specific core | |||
| label = "%percentage%%" | |||
| ; Only applies if <bar-load> is used | |||
| bar-load-width = 10 | |||
| bar-load-gradient = false | |||
| bar-load-indicator = ${bar.indicator} | |||
| bar-load-indicator-foreground = ${color.foreground} | |||
| bar-load-fill = ${bar.fill} | |||
| bar-load-foreground-0 = ${color.foreground} | |||
| bar-load-foreground-1 = ${color.foreground} | |||
| bar-load-foreground-2 = ${color.foreground} | |||
| bar-load-empty = ${bar.empty} | |||
| bar-load-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/filesystem_bar] | |||
| type = internal/fs | |||
| ; Mountpoints to display | |||
| mount-0 = / | |||
| ;;mount-1 = /home | |||
| ;;mount-2 = /var | |||
| ; Seconds to sleep between updates | |||
| ; Default: 30 | |||
| interval = 30 | |||
| ; Display fixed precision values | |||
| ; Default: false | |||
| fixed-values = false | |||
| ; Spacing between entries | |||
| ; Default: 2 | |||
| ;;spacing = 4 | |||
| ; Available tags: | |||
| ; <label-mounted> (default) | |||
| ; <bar-free> | |||
| ; <bar-used> | |||
| ; <ramp-capacity> | |||
| format-mounted = <bar-used> <label-mounted> | |||
| format-mounted-prefix = " " | |||
| format-mounted-prefix-font = 2 | |||
| format-mounted-background = ${color.shade5} | |||
| format-mounted-padding = 2 | |||
| ; Available tags: | |||
| ; <label-unmounted> (default) | |||
| format-unmounted = <label-unmounted> | |||
| format-unmounted-prefix = " " | |||
| format-unmounted-prefix-font = 2 | |||
| format-unmounted-background = ${color.shade5} | |||
| format-unmounted-padding = 2 | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; %type% | |||
| ; %fsname% | |||
| ; %percentage_free% | |||
| ; %percentage_used% | |||
| ; %total% | |||
| ; %free% | |||
| ; %used% | |||
| ; Default: %mountpoint% %percentage_free%% | |||
| label-mounted = %used%/%total% | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; Default: %mountpoint% is not mounted | |||
| label-unmounted = "%mountpoint%: not mounted" | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-width = 10 | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.foreground} | |||
| bar-used-foreground-1 = ${color.foreground} | |||
| bar-used-foreground-2 = ${color.foreground} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/memory_bar] | |||
| type = internal/memory | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 2 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-used> | |||
| ; <bar-free> | |||
| ; <ramp-used> | |||
| ; <ramp-free> | |||
| ; <bar-swap-used> | |||
| ; <bar-swap-free> | |||
| ; <ramp-swap-used> | |||
| ; <ramp-swap-free> | |||
| format = <bar-used> <label> | |||
| format-prefix = " " | |||
| format-prefix-font = 2 | |||
| format-background = ${color.shade6} | |||
| format-padding = 2 | |||
| ; Available tokens: | |||
| ; %percentage_used% (default) | |||
| ; %percentage_free% | |||
| ; %gb_used% | |||
| ; %gb_free% | |||
| ; %gb_total% | |||
| ; %mb_used% | |||
| ; %mb_free% | |||
| ; %mb_total% | |||
| ; %percentage_swap_used% | |||
| ; %percentage_swap_free% | |||
| ; %mb_swap_total% | |||
| ; %mb_swap_free% | |||
| ; %mb_swap_used% | |||
| ; %gb_swap_total% | |||
| ; %gb_swap_free% | |||
| ; %gb_swap_used% | |||
| label = "%mb_used%" | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-width = 10 | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.foreground} | |||
| bar-used-foreground-1 = ${color.foreground} | |||
| bar-used-foreground-2 = ${color.foreground} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/mpd_bar] | |||
| type = internal/mpd | |||
| ; Host where mpd is running (either ip or domain name) | |||
| ; Can also be the full path to a unix socket where mpd is running. | |||
| ;;host = 127.0.0.1 | |||
| ;;port = 6600 | |||
| ;;password = mysecretpassword | |||
| ; Seconds to sleep between progressbar/song timer sync | |||
| ; Default: 1 | |||
| interval = 1 | |||
| ; Available tags: | |||
| ; <label-song> (default) | |||
| ; <label-time> | |||
| ; <bar-progress> | |||
| ; <toggle> - gets replaced with <icon-(pause|play)> | |||
| ; <toggle-stop> - gets replaced with <icon-(stop|play)> | |||
| ; <icon-random> | |||
| ; <icon-repeat> | |||
| ; <icon-repeatone> (deprecated) | |||
| ; <icon-single> - Toggle playing only a single song. Replaces <icon-repeatone> | |||
| ; <icon-consume> | |||
| ; <icon-prev> | |||
| ; <icon-stop> | |||
| ; <icon-play> | |||
| ; <icon-pause> | |||
| ; <icon-next> | |||
| ; <icon-seekb> | |||
| ; <icon-seekf> | |||
| format-online = <label-song> <bar-progress> <label-time> | |||
| format-online-prefix = ﱘ | |||
| format-online-prefix-font = 2 | |||
| format-online-background = ${color.shade4} | |||
| format-online-padding = 2 | |||
| ;format-playing = ${self.format-online} | |||
| ;format-paused = ${self.format-online} | |||
| ;format-stopped = ${self.format-online} | |||
| ; Available tags: | |||
| ; <label-offline> | |||
| format-offline = <label-offline> | |||
| format-offline-prefix = ﱘ | |||
| format-offline-prefix-font = 2 | |||
| format-offline-background = ${color.shade4} | |||
| format-offline-padding = 2 | |||
| ; Available tokens: | |||
| ; %artist% | |||
| ; %album-artist% | |||
| ; %album% | |||
| ; %date% | |||
| ; %title% | |||
| ; Default: %artist% - %title% | |||
| label-song = " %artist% - %title%" | |||
| label-song-maxlen = 25 | |||
| label-song-ellipsis = true | |||
| ; Available tokens: | |||
| ; %elapsed% | |||
| ; %total% | |||
| ; Default: %elapsed% / %total% | |||
| label-time = %elapsed% / %total% | |||
| ; Available tokens: | |||
| ; None | |||
| label-offline = " Offline" | |||
| ; Only applies if <icon-X> is used | |||
| icon-play = 喇 | |||
| icon-pause = | |||
| icon-stop = | |||
| icon-prev = | |||
| icon-next = | |||
| icon-seekb = | |||
| icon-seekf = | |||
| icon-random = | |||
| icon-repeat = | |||
| icon-repeatone = | |||
| icon-single = | |||
| icon-consume = | |||
| ; Used to display the state of random/repeat/repeatone/single | |||
| ; Only applies if <icon-[random|repeat|repeatone|single]> is used | |||
| toggle-on-foreground = ${color.foreground} | |||
| toggle-off-foreground = ${color.background} | |||
| ; Only applies if <bar-progress> is used | |||
| bar-progress-width = 10 | |||
| bar-progress-gradient = false | |||
| bar-progress-indicator = ${bar.indicator} | |||
| bar-progress-indicator-foreground = ${color.foreground} | |||
| bar-progress-fill = ${bar.fill} | |||
| bar-progress-foreground-0 = ${color.foreground} | |||
| bar-progress-foreground-1 = ${color.foreground} | |||
| bar-progress-foreground-2 = ${color.foreground} | |||
| bar-progress-empty = ${bar.empty} | |||
| bar-progress-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,30 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█░░░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░░░█░█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [color] | |||
| ;; Use pywal.sh in scripts directory to use colors from an image/wallpaper. | |||
| ;; main colors | |||
| background = #141C21 | |||
| foreground = #F5F5F5 | |||
| foreground-alt = #FFFFFF | |||
| alpha = #00000000 | |||
| ;; shades | |||
| shade1 = #BF360C | |||
| shade2 = #D84315 | |||
| shade3 = #E64A19 | |||
| shade4 = #F4511E | |||
| shade5 = #FF5722 | |||
| shade6 = #FF7043 | |||
| shade7 = #FF8A65 | |||
| shade8 = #FFAB91 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,293 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/colorblocks/bars.ini | |||
| include-file = ~/.config/polybar/colorblocks/colors.ini | |||
| include-file = ~/.config/polybar/colorblocks/modules.ini | |||
| include-file = ~/.config/polybar/colorblocks/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = true | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 99% | |||
| height = 40 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 0.5% | |||
| offset-y = 1% | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.alpha} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| underline-size = 2 | |||
| underline-color = ${color.foreground} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-size = 0 | |||
| border-color = ${color.background} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 0 | |||
| module-margin-right = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| font-0 = "Iosevka Nerd Font:pixelsize=10;4" | |||
| font-1 = "Iosevka Nerd Font:pixelsize=13;4" | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| modules-left = launcher sep workspaces sep mpd | |||
| modules-center = | |||
| modules-right = color-switch sep cpu memory alsa battery network date sep sysmenu | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| # Add this script to your wm startup file. | |||
| DIR="$HOME/.config/polybar/colorblocks" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the bar | |||
| polybar -q main -c "$DIR"/config.ini & | |||
| @ -0,0 +1,311 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀█░█▀▄░█▀▀░█░█░▀█▀░█▀▀░█░█░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▀░█▀▄░█▀▀░▀▄▀░░█░░█▀▀░█▄█░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░░░▀░▀░▀▀▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/colorblocks/bars.ini | |||
| include-file = ~/.config/polybar/colorblocks/colors.ini | |||
| include-file = ~/.config/polybar/colorblocks/modules.ini | |||
| include-file = ~/.config/polybar/colorblocks/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = true | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 99% | |||
| height = 40 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 0.5% | |||
| offset-y = 1% | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.alpha} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| underline-size = 2 | |||
| underline-color = ${color.foreground} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-size = 0 | |||
| border-color = ${color.background} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 0 | |||
| module-margin-right = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| font-0 = "Iosevka Nerd Font:pixelsize=10;4" | |||
| font-1 = "Iosevka Nerd Font:pixelsize=13;4" | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar/top] | |||
| inherit = bar/main | |||
| modules-left = menu sep title sep google github reddit gmail twitter | |||
| modules-right = updates temperature filesystem keyboard pulseaudio backlight sep powermenu | |||
| enable-ipc = true | |||
| [bar/mid] | |||
| offset-y = 62 | |||
| inherit = bar/main | |||
| modules-center = cpu_bar sep memory_bar sep filesystem_bar sep mpd_bar sep battery_bar sep volume sep brightness | |||
| enable-ipc = true | |||
| [bar/bottom] | |||
| inherit = bar/main | |||
| offset-y = 114 | |||
| modules-left = launcher sep workspaces sep mpd | |||
| modules-center = | |||
| modules-right = color-switch sep cpu memory alsa battery network date sep sysmenu | |||
| enable-ipc = true | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| ;enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| DIR="$HOME/.config/polybar/colorblocks" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the preview bar | |||
| polybar -q top -c "$DIR"/preview.ini & | |||
| polybar -q mid -c "$DIR"/preview.ini & | |||
| polybar -q bottom -c "$DIR"/preview.ini & | |||
| @ -0,0 +1,117 @@ | |||
| #!/usr/bin/bash | |||
| # | |||
| # checkupdates: Safely print a list of pending updates. | |||
| # | |||
| # Copyright (c) 2013 Kyle Keen <keenerd@gmail.com> | |||
| # | |||
| # This program is free software; you can redistribute it and/or modify | |||
| # it under the terms of the GNU General Public License as published by | |||
| # the Free Software Foundation; either version 2 of the License, or | |||
| # (at your option) any later version. | |||
| # | |||
| # This program is distributed in the hope that it will be useful, | |||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
| # GNU General Public License for more details. | |||
| # | |||
| # You should have received a copy of the GNU General Public License | |||
| # along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| # | |||
| declare -r myname='checkupdates' | |||
| declare -r myver='1.0.0' | |||
| plain() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg2() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| ask() { | |||
| local mesg=$1; shift | |||
| printf "${BLUE}::${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&1 | |||
| } | |||
| warning() { | |||
| local mesg=$1; shift | |||
| printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| error() { | |||
| local mesg=$1; shift | |||
| printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| # check if messages are to be printed using color | |||
| unset ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if [[ -t 2 && ! $USE_COLOR = "n" ]]; then | |||
| # prefer terminal safe colored and bold text when tput is supported | |||
| if tput setaf 0 &>/dev/null; then | |||
| ALL_OFF="$(tput sgr0)" | |||
| BOLD="$(tput bold)" | |||
| BLUE="${BOLD}$(tput setaf 4)" | |||
| GREEN="${BOLD}$(tput setaf 2)" | |||
| RED="${BOLD}$(tput setaf 1)" | |||
| YELLOW="${BOLD}$(tput setaf 3)" | |||
| else | |||
| ALL_OFF="\e[1;0m" | |||
| BOLD="\e[1;1m" | |||
| BLUE="${BOLD}\e[1;34m" | |||
| GREEN="${BOLD}\e[1;32m" | |||
| RED="${BOLD}\e[1;31m" | |||
| YELLOW="${BOLD}\e[1;33m" | |||
| fi | |||
| fi | |||
| readonly ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if (( $# > 0 )); then | |||
| echo "${myname} v${myver}" | |||
| echo | |||
| echo "Safely print a list of pending updates" | |||
| echo | |||
| echo "Usage: ${myname}" | |||
| echo | |||
| echo 'Note: Export the "CHECKUPDATES_DB" variable to change the path of the temporary database.' | |||
| exit 0 | |||
| fi | |||
| if ! type -P fakeroot >/dev/null; then | |||
| error 'Cannot find the fakeroot binary.' | |||
| exit 1 | |||
| fi | |||
| if [[ -z $CHECKUPDATES_DB ]]; then | |||
| CHECKUPDATES_DB="${TMPDIR:-/tmp}/checkup-db-${USER}/" | |||
| fi | |||
| trap 'rm -f $CHECKUPDATES_DB/db.lck' INT TERM EXIT | |||
| DBPath="$(pacman-conf DBPath)" | |||
| if [[ -z "$DBPath" ]] || [[ ! -d "$DBPath" ]]; then | |||
| DBPath="/var/lib/pacman/" | |||
| fi | |||
| mkdir -p "$CHECKUPDATES_DB" | |||
| ln -s "${DBPath}/local" "$CHECKUPDATES_DB" &> /dev/null | |||
| if ! fakeroot -- pacman -Sy --dbpath "$CHECKUPDATES_DB" --logfile /dev/null &> /dev/null; then | |||
| error 'Cannot fetch updates' | |||
| exit 1 | |||
| fi | |||
| pacman -Qu --dbpath "$CHECKUPDATES_DB" 2> /dev/null | grep -v '\[.*\]' | |||
| exit 0 | |||
| # vim: set noet: | |||
| @ -0,0 +1,55 @@ | |||
| #!/usr/bin/env bash | |||
| SDIR="$HOME/.config/polybar/colorblocks/scripts" | |||
| # Launch Rofi | |||
| MENU="$(rofi -no-config -no-lazy-grab -sep "|" -dmenu -i -p '' \ | |||
| -theme $SDIR/rofi/styles.rasi \ | |||
| <<< "♥ amber|♥ blue|♥ blue-gray|♥ brown|♥ cyan|♥ deep-orange|\ | |||
| ♥ deep-purple|♥ green|♥ gray|♥ indigo|♥ blue-light|♥ green-light|\ | |||
| ♥ lime|♥ orange|♥ pink|♥ purple|♥ red|♥ teal|♥ yellow|♥ amber-dark|\ | |||
| ♥ blue-dark|♥ blue-gray-dark|♥ brown-dark|♥ cyan-dark|♥ deep-orange-dark|\ | |||
| ♥ deep-purple-dark|♥ green-dark|♥ gray-dark|♥ indigo-dark|♥ blue-light-dark|\ | |||
| ♥ green-light-dark|♥ lime-dark|♥ orange-dark|♥ pink-dark|♥ purple-dark|♥ red-dark|♥ teal-dark|♥ yellow-dark|")" | |||
| case "$MENU" in | |||
| ## Light Colors | |||
| *amber) "$SDIR"/colors-light.sh --amber ;; | |||
| *blue) "$SDIR"/colors-light.sh --blue ;; | |||
| *blue-gray) "$SDIR"/colors-light.sh --blue-gray ;; | |||
| *brown) "$SDIR"/colors-light.sh --brown ;; | |||
| *cyan) "$SDIR"/colors-light.sh --cyan ;; | |||
| *deep-orange) "$SDIR"/colors-light.sh --deep-orange ;; | |||
| *deep-purple) "$SDIR"/colors-light.sh --deep-purple ;; | |||
| *green) "$SDIR"/colors-light.sh --green ;; | |||
| *gray) "$SDIR"/colors-light.sh --gray ;; | |||
| *indigo) "$SDIR"/colors-light.sh --indigo ;; | |||
| *blue-light) "$SDIR"/colors-light.sh --light-blue ;; | |||
| *green-light) "$SDIR"/colors-light.sh --light-green ;; | |||
| *lime) "$SDIR"/colors-light.sh --lime ;; | |||
| *orange) "$SDIR"/colors-light.sh --orange ;; | |||
| *pink) "$SDIR"/colors-light.sh --pink ;; | |||
| *purple) "$SDIR"/colors-light.sh --purple ;; | |||
| *red) "$SDIR"/colors-light.sh --red ;; | |||
| *teal) "$SDIR"/colors-light.sh --teal ;; | |||
| *yellow) "$SDIR"/colors-light.sh --yellow ;; | |||
| ## Dark Colors | |||
| *amber-dark) "$SDIR"/colors-dark.sh --amber ;; | |||
| *blue-dark) "$SDIR"/colors-dark.sh --blue ;; | |||
| *blue-gray-dark) "$SDIR"/colors-dark.sh --blue-gray ;; | |||
| *brown-dark) "$SDIR"/colors-dark.sh --brown ;; | |||
| *cyan-dark) "$SDIR"/colors-dark.sh --cyan ;; | |||
| *deep-orange-dark) "$SDIR"/colors-dark.sh --deep-orange ;; | |||
| *deep-purple-dark) "$SDIR"/colors-dark.sh --deep-purple ;; | |||
| *green-dark) "$SDIR"/colors-dark.sh --green ;; | |||
| *gray-dark) "$SDIR"/colors-dark.sh --gray ;; | |||
| *indigo-dark) "$SDIR"/colors-dark.sh --indigo ;; | |||
| *blue-light-dark) "$SDIR"/colors-dark.sh --light-blue ;; | |||
| *green-light-dark) "$SDIR"/colors-dark.sh --light-green ;; | |||
| *lime-dark) "$SDIR"/colors-dark.sh --lime ;; | |||
| *orange-dark) "$SDIR"/colors-dark.sh --orange ;; | |||
| *pink-dark) "$SDIR"/colors-dark.sh --pink ;; | |||
| *purple-dark) "$SDIR"/colors-dark.sh --purple ;; | |||
| *red-dark) "$SDIR"/colors-dark.sh --red ;; | |||
| *teal-dark) "$SDIR"/colors-dark.sh --teal ;; | |||
| *yellow-dark) "$SDIR"/colors-dark.sh --yellow | |||
| esac | |||
| @ -0,0 +1,143 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/colorblocks/colors.ini" | |||
| RFILE="$HOME/.config/polybar/colorblocks/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e 's/background = #.*/background = #141C21/g' $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e 's/foreground-alt = #.*/foreground-alt = #FFFFFF/g' $PFILE | |||
| sed -i -e "s/shade1 = #.*/shade1 = $SH1/g" $PFILE | |||
| sed -i -e "s/shade2 = #.*/shade2 = $SH2/g" $PFILE | |||
| sed -i -e "s/shade3 = #.*/shade3 = $SH3/g" $PFILE | |||
| sed -i -e "s/shade4 = #.*/shade4 = $SH4/g" $PFILE | |||
| sed -i -e "s/shade5 = #.*/shade5 = $SH5/g" $PFILE | |||
| sed -i -e "s/shade6 = #.*/shade6 = $SH6/g" $PFILE | |||
| sed -i -e "s/shade7 = #.*/shade7 = $SH7/g" $PFILE | |||
| sed -i -e "s/shade8 = #.*/shade8 = $SH8/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #141C21FF; | |||
| bg1: ${SH8}FF; | |||
| bg2: ${SH7}FF; | |||
| bg3: ${SH6}FF; | |||
| fg: #FFFFFFFF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--amber" ]]; then | |||
| FG="#141C21" | |||
| SH1="#FF6F00" SH2="#FF8F00" SH3="#FFA000" SH4="#FFB300" | |||
| SH5="#FFC107" SH6="#FFCA28" SH7="#FFD54F" SH8="#FFE082" | |||
| change_color | |||
| elif [[ $1 = "--blue" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#0D47A1" SH2="#1565C0" SH3="#1976D2" SH4="#1E88E5" | |||
| SH5="#2196F3" SH6="#42A5F5" SH7="#64B5F6" SH8="#90CAF9" | |||
| change_color | |||
| elif [[ $1 = "--blue-gray" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#263238" SH2="#37474F" SH3="#455A64" SH4="#546E7A" | |||
| SH5="#607D8B" SH6="#78909C" SH7="#90A4AE" SH8="#B0BEC5" | |||
| change_color | |||
| elif [[ $1 = "--brown" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#3E2723" SH2="#4E342E" SH3="#5D4037" SH4="#6D4C41" | |||
| SH5="#795548" SH6="#8D6E63" SH7="#A1887F" SH8="#BCAAA4" | |||
| change_color | |||
| elif [[ $1 = "--cyan" ]]; then | |||
| FG="#141C21" | |||
| SH1="#006064" SH2="#00838F" SH3="#0097A7" SH4="#00ACC1" | |||
| SH5="#00BCD4" SH6="#26C6DA" SH7="#4DD0E1" SH8="#80DEEA" | |||
| change_color | |||
| elif [[ $1 = "--deep-orange" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#BF360C" SH2="#D84315" SH3="#E64A19" SH4="#F4511E" | |||
| SH5="#FF5722" SH6="#FF7043" SH7="#FF8A65" SH8="#FFAB91" | |||
| change_color | |||
| elif [[ $1 = "--deep-purple" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#311B92" SH2="#4527A0" SH3="#512DA8" SH4="#5E35B1" | |||
| SH5="#673AB7" SH6="#7E57C2" SH7="#9575CD" SH8="#B39DDB" | |||
| change_color | |||
| elif [[ $1 = "--green" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#1B5E20" SH2="#2E7D32" SH3="#388E3C" SH4="#43A047" | |||
| SH5="#4CAF50" SH6="#66BB6A" SH7="#81C784" SH8="#A5D6A7" | |||
| change_color | |||
| elif [[ $1 = "--gray" ]]; then | |||
| FG="#141C21" | |||
| SH1="#212121" SH2="#424242" SH3="#616161" SH4="#757575" | |||
| SH5="#9E9E9E" SH6="#BDBDBD" SH7="#D4D4D4" SH8="#EEEEEE" | |||
| change_color | |||
| elif [[ $1 = "--indigo" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#1A237E" SH2="#283593" SH3="#303F9F" SH4="#3949AB" | |||
| SH5="#3F51B5" SH6="#5C6BC0" SH7="#7986CB" SH8="#9FA8DA" | |||
| change_color | |||
| elif [[ $1 = "--light-blue" ]]; then | |||
| FG="#141C21" | |||
| SH1="#01579B" SH2="#0277BD" SH3="#0288D1" SH4="#039BE5" | |||
| SH5="#03A9F4" SH6="#29B6F6" SH7="#4FC3F7" SH8="#81D4FA" | |||
| change_color | |||
| elif [[ $1 = "--light-green" ]]; then | |||
| FG="#141C21" | |||
| SH1="#33691E" SH2="#558B2F" SH3="#689F38" SH4="#7CB342" | |||
| SH5="#8BC34A" SH6="#9CCC65" SH7="#AED581" SH8="#C5E1A5" | |||
| change_color | |||
| elif [[ $1 = "--lime" ]]; then | |||
| FG="#141C21" | |||
| SH1="#827717" SH2="#9E9D24" SH3="#AFB42B" SH4="#C0CA33" | |||
| SH5="#CDDC39" SH6="#D4E157" SH7="#DCE775" SH8="#E6EE9C" | |||
| change_color | |||
| elif [[ $1 = "--orange" ]]; then | |||
| FG="#141C21" | |||
| SH1="#E65100" SH2="#EF6C00" SH3="#F57C00" SH4="#FB8C00" | |||
| SH5="#FF9800" SH6="#FFA726" SH7="#FFB74D" SH8="#FFCC80" | |||
| change_color | |||
| elif [[ $1 = "--pink" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#880E4F" SH2="#AD1457" SH3="#C2185B" SH4="#D81B60" | |||
| SH5="#E91E63" SH6="#EC407A" SH7="#F06292" SH8="#F48FB1" | |||
| change_color | |||
| elif [[ $1 = "--purple" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#4A148C" SH2="#6A1B9A" SH3="#7B1FA2" SH4="#8E24AA" | |||
| SH5="#9C27B0" SH6="#AB47BC" SH7="#BA68C8" SH8="#CE93D8" | |||
| change_color | |||
| elif [[ $1 = "--red" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#B71C1C" SH2="#C62828" SH3="#D32F2F" SH4="#E53935" | |||
| SH5="#EE413D" SH6="#EF5350" SH7="#E57373" SH8="#EF9A9A" | |||
| change_color | |||
| elif [[ $1 = "--teal" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#004D40" SH2="#00695C" SH3="#00796B" SH4="#00897B" | |||
| SH5="#009688" SH6="#26A69A" SH7="#4DB6AC" SH8="#80CBC4" | |||
| change_color | |||
| elif [[ $1 = "--yellow" ]]; then | |||
| FG="#141C21" | |||
| SH1="#F57F17" SH2="#F9A825" SH3="#FBC02D" SH4="#FDD835" | |||
| SH5="#FFEB3B" SH6="#FFEE58" SH7="#FFF176" SH8="#FFF59D" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --amber --blue --blue-gray --brown | |||
| --cyan --deep-orange --deep-purple --green | |||
| --gray --indigo --light-blue --light-green | |||
| --lime --orange --pink --purple | |||
| --red --teal --yellow | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,143 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/colorblocks/colors.ini" | |||
| RFILE="$HOME/.config/polybar/colorblocks/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e 's/background = #.*/background = #FFFFFF/g' $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e 's/foreground-alt = #.*/foreground-alt = #141C21/g' $PFILE | |||
| sed -i -e "s/shade1 = #.*/shade1 = $SH1/g" $PFILE | |||
| sed -i -e "s/shade2 = #.*/shade2 = $SH2/g" $PFILE | |||
| sed -i -e "s/shade3 = #.*/shade3 = $SH3/g" $PFILE | |||
| sed -i -e "s/shade4 = #.*/shade4 = $SH4/g" $PFILE | |||
| sed -i -e "s/shade5 = #.*/shade5 = $SH5/g" $PFILE | |||
| sed -i -e "s/shade6 = #.*/shade6 = $SH6/g" $PFILE | |||
| sed -i -e "s/shade7 = #.*/shade7 = $SH7/g" $PFILE | |||
| sed -i -e "s/shade8 = #.*/shade8 = $SH8/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #FFFFFFFF; | |||
| bg1: ${SH5}FF; | |||
| bg2: ${SH4}FF; | |||
| bg3: ${SH3}FF; | |||
| fg: #141C21FF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--amber" ]]; then | |||
| FG="#141C21" | |||
| SH1="#FF6F00" SH2="#FF8F00" SH3="#FFA000" SH4="#FFB300" | |||
| SH5="#FFC107" SH6="#FFCA28" SH7="#FFD54F" SH8="#FFE082" | |||
| change_color | |||
| elif [[ $1 = "--blue" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#0D47A1" SH2="#1565C0" SH3="#1976D2" SH4="#1E88E5" | |||
| SH5="#2196F3" SH6="#42A5F5" SH7="#64B5F6" SH8="#90CAF9" | |||
| change_color | |||
| elif [[ $1 = "--blue-gray" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#263238" SH2="#37474F" SH3="#455A64" SH4="#546E7A" | |||
| SH5="#607D8B" SH6="#78909C" SH7="#90A4AE" SH8="#B0BEC5" | |||
| change_color | |||
| elif [[ $1 = "--brown" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#3E2723" SH2="#4E342E" SH3="#5D4037" SH4="#6D4C41" | |||
| SH5="#795548" SH6="#8D6E63" SH7="#A1887F" SH8="#BCAAA4" | |||
| change_color | |||
| elif [[ $1 = "--cyan" ]]; then | |||
| FG="#141C21" | |||
| SH1="#006064" SH2="#00838F" SH3="#0097A7" SH4="#00ACC1" | |||
| SH5="#00BCD4" SH6="#26C6DA" SH7="#4DD0E1" SH8="#80DEEA" | |||
| change_color | |||
| elif [[ $1 = "--deep-orange" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#BF360C" SH2="#D84315" SH3="#E64A19" SH4="#F4511E" | |||
| SH5="#FF5722" SH6="#FF7043" SH7="#FF8A65" SH8="#FFAB91" | |||
| change_color | |||
| elif [[ $1 = "--deep-purple" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#311B92" SH2="#4527A0" SH3="#512DA8" SH4="#5E35B1" | |||
| SH5="#673AB7" SH6="#7E57C2" SH7="#9575CD" SH8="#B39DDB" | |||
| change_color | |||
| elif [[ $1 = "--green" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#1B5E20" SH2="#2E7D32" SH3="#388E3C" SH4="#43A047" | |||
| SH5="#4CAF50" SH6="#66BB6A" SH7="#81C784" SH8="#A5D6A7" | |||
| change_color | |||
| elif [[ $1 = "--gray" ]]; then | |||
| FG="#141C21" | |||
| SH1="#212121" SH2="#424242" SH3="#616161" SH4="#757575" | |||
| SH5="#9E9E9E" SH6="#BDBDBD" SH7="#D4D4D4" SH8="#EEEEEE" | |||
| change_color | |||
| elif [[ $1 = "--indigo" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#1A237E" SH2="#283593" SH3="#303F9F" SH4="#3949AB" | |||
| SH5="#3F51B5" SH6="#5C6BC0" SH7="#7986CB" SH8="#9FA8DA" | |||
| change_color | |||
| elif [[ $1 = "--light-blue" ]]; then | |||
| FG="#141C21" | |||
| SH1="#01579B" SH2="#0277BD" SH3="#0288D1" SH4="#039BE5" | |||
| SH5="#03A9F4" SH6="#29B6F6" SH7="#4FC3F7" SH8="#81D4FA" | |||
| change_color | |||
| elif [[ $1 = "--light-green" ]]; then | |||
| FG="#141C21" | |||
| SH1="#33691E" SH2="#558B2F" SH3="#689F38" SH4="#7CB342" | |||
| SH5="#8BC34A" SH6="#9CCC65" SH7="#AED581" SH8="#C5E1A5" | |||
| change_color | |||
| elif [[ $1 = "--lime" ]]; then | |||
| FG="#141C21" | |||
| SH1="#827717" SH2="#9E9D24" SH3="#AFB42B" SH4="#C0CA33" | |||
| SH5="#CDDC39" SH6="#D4E157" SH7="#DCE775" SH8="#E6EE9C" | |||
| change_color | |||
| elif [[ $1 = "--orange" ]]; then | |||
| FG="#141C21" | |||
| SH1="#E65100" SH2="#EF6C00" SH3="#F57C00" SH4="#FB8C00" | |||
| SH5="#FF9800" SH6="#FFA726" SH7="#FFB74D" SH8="#FFCC80" | |||
| change_color | |||
| elif [[ $1 = "--pink" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#880E4F" SH2="#AD1457" SH3="#C2185B" SH4="#D81B60" | |||
| SH5="#E91E63" SH6="#EC407A" SH7="#F06292" SH8="#F48FB1" | |||
| change_color | |||
| elif [[ $1 = "--purple" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#4A148C" SH2="#6A1B9A" SH3="#7B1FA2" SH4="#8E24AA" | |||
| SH5="#9C27B0" SH6="#AB47BC" SH7="#BA68C8" SH8="#CE93D8" | |||
| change_color | |||
| elif [[ $1 = "--red" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#B71C1C" SH2="#C62828" SH3="#D32F2F" SH4="#E53935" | |||
| SH5="#EE413D" SH6="#EF5350" SH7="#E57373" SH8="#EF9A9A" | |||
| change_color | |||
| elif [[ $1 = "--teal" ]]; then | |||
| FG="#F5F5F5" | |||
| SH1="#004D40" SH2="#00695C" SH3="#00796B" SH4="#00897B" | |||
| SH5="#009688" SH6="#26A69A" SH7="#4DB6AC" SH8="#80CBC4" | |||
| change_color | |||
| elif [[ $1 = "--yellow" ]]; then | |||
| FG="#141C21" | |||
| SH1="#F57F17" SH2="#F9A825" SH3="#FBC02D" SH4="#FDD835" | |||
| SH5="#FFEB3B" SH6="#FFEE58" SH7="#FFF176" SH8="#FFF59D" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --amber --blue --blue-gray --brown | |||
| --cyan --deep-orange --deep-purple --green | |||
| --gray --indigo --light-blue --light-green | |||
| --lime --orange --pink --purple | |||
| --red --teal --yellow | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,3 @@ | |||
| #!/usr/bin/env bash | |||
| rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/polybar/colorblocks/scripts/rofi/launcher.rasi | |||
| @ -0,0 +1,94 @@ | |||
| #!/usr/bin/env bash | |||
| ## Author : Aditya Shakya | |||
| ## Mail : adi1090x@gmail.com | |||
| ## Github : @adi1090x | |||
| ## Twitter : @adi1090x | |||
| dir="~/.config/polybar/colorblocks/scripts/rofi" | |||
| uptime=$(uptime -p | sed -e 's/up //g') | |||
| rofi_command="rofi -theme $dir/powermenu.rasi" | |||
| # Options | |||
| shutdown=" Shutdown" | |||
| reboot=" Restart" | |||
| lock=" Lock" | |||
| suspend=" Sleep" | |||
| logout=" Logout" | |||
| # Confirmation | |||
| confirm_exit() { | |||
| rofi -dmenu\ | |||
| -i\ | |||
| -no-fixed-num-lines\ | |||
| -p "Are You Sure? : "\ | |||
| -theme $dir/confirm.rasi | |||
| } | |||
| # Message | |||
| msg() { | |||
| rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" | |||
| } | |||
| # Variable passed to rofi | |||
| options="$lock\n$suspend\n$logout\n$reboot\n$shutdown" | |||
| chosen="$(echo -e "$options" | $rofi_command -p "Uptime: $uptime" -dmenu -selected-row 0)" | |||
| case $chosen in | |||
| $shutdown) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl poweroff | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $reboot) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl reboot | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $lock) | |||
| if [[ -f /usr/bin/i3lock ]]; then | |||
| i3lock | |||
| elif [[ -f /usr/bin/betterlockscreen ]]; then | |||
| betterlockscreen -l | |||
| fi | |||
| ;; | |||
| $suspend) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| mpc -q pause | |||
| amixer set Master mute | |||
| systemctl suspend | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $logout) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| if [[ "$DESKTOP_SESSION" == "Openbox" ]]; then | |||
| openbox --exit | |||
| elif [[ "$DESKTOP_SESSION" == "bspwm" ]]; then | |||
| bspc quit | |||
| elif [[ "$DESKTOP_SESSION" == "i3" ]]; then | |||
| i3-msg exit | |||
| fi | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| esac | |||
| @ -0,0 +1,71 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/colorblocks/colors.ini" | |||
| RFILE="$HOME/.config/polybar/colorblocks/scripts/rofi/colors.rasi" | |||
| # Get colors | |||
| pywal_get() { | |||
| wal -i "$1" -q -t | |||
| } | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = $BG/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = $FGA/g" $PFILE | |||
| sed -i -e "s/shade1 = #.*/shade1 = $SH1/g" $PFILE | |||
| sed -i -e "s/shade2 = #.*/shade2 = $SH2/g" $PFILE | |||
| sed -i -e "s/shade3 = #.*/shade3 = $SH3/g" $PFILE | |||
| sed -i -e "s/shade4 = #.*/shade4 = $SH4/g" $PFILE | |||
| sed -i -e "s/shade5 = #.*/shade5 = $SH5/g" $PFILE | |||
| sed -i -e "s/shade6 = #.*/shade6 = $SH6/g" $PFILE | |||
| sed -i -e "s/shade7 = #.*/shade7 = $SH7/g" $PFILE | |||
| sed -i -e "s/shade8 = #.*/shade8 = $SH8/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: ${BG}FF; | |||
| bg1: ${SH8}FF; | |||
| bg2: ${SH7}FF; | |||
| bg3: ${SH6}FF; | |||
| fg: ${FGA}FF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| # Main | |||
| if [[ -f "/usr/bin/wal" ]]; then | |||
| if [[ "$1" ]]; then | |||
| pywal_get "$1" | |||
| # Source the pywal color file | |||
| . "$HOME/.cache/wal/colors.sh" | |||
| BG=`printf "%s\n" "$background"` | |||
| FG=`printf "%s\n" "$color0"` | |||
| FGA=`printf "%s\n" "$color7"` | |||
| SH1=`printf "%s\n" "$color1"` | |||
| SH2=`printf "%s\n" "$color2"` | |||
| SH3=`printf "%s\n" "$color1"` | |||
| SH4=`printf "%s\n" "$color2"` | |||
| SH5=`printf "%s\n" "$color1"` | |||
| SH6=`printf "%s\n" "$color2"` | |||
| SH7=`printf "%s\n" "$color1"` | |||
| SH8=`printf "%s\n" "$color2"` | |||
| change_color | |||
| else | |||
| echo -e "[!] Please enter the path to wallpaper. \n" | |||
| echo "Usage : ./pywal.sh path/to/image" | |||
| fi | |||
| else | |||
| echo "[!] 'pywal' is not installed." | |||
| fi | |||
| @ -0,0 +1,84 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/colorblocks/colors.ini" | |||
| RFILE="$HOME/.config/polybar/colorblocks/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = $BG/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = $FGA/g" $PFILE | |||
| sed -i -e "s/shade1 = #.*/shade1 = $SH1/g" $PFILE | |||
| sed -i -e "s/shade2 = #.*/shade2 = $SH2/g" $PFILE | |||
| sed -i -e "s/shade3 = #.*/shade3 = $SH3/g" $PFILE | |||
| sed -i -e "s/shade4 = #.*/shade4 = $SH4/g" $PFILE | |||
| sed -i -e "s/shade5 = #.*/shade5 = $SH5/g" $PFILE | |||
| sed -i -e "s/shade6 = #.*/shade6 = $SH6/g" $PFILE | |||
| sed -i -e "s/shade7 = #.*/shade7 = $SH7/g" $PFILE | |||
| sed -i -e "s/shade8 = #.*/shade8 = $SH8/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #141C21FF; | |||
| bg1: ${SH8}FF; | |||
| bg2: ${SH7}FF; | |||
| bg3: ${SH6}FF; | |||
| fg: #FFFFFFFF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| get_random_number() { | |||
| RNUM=$(( ($RANDOM % $1) + 1 )) | |||
| } | |||
| get_random_color() { | |||
| RCOLOR="#" | |||
| for i in 1 2 3 4 5 6 | |||
| do | |||
| get_random_number "16" | |||
| case $RNUM in | |||
| "1") NEXTDIGIT="1";; | |||
| "2") NEXTDIGIT="2";; | |||
| "3") NEXTDIGIT="3";; | |||
| "4") NEXTDIGIT="4";; | |||
| "5") NEXTDIGIT="5";; | |||
| "6") NEXTDIGIT="6";; | |||
| "7") NEXTDIGIT="7";; | |||
| "8") NEXTDIGIT="8";; | |||
| "9") NEXTDIGIT="9";; | |||
| "10") NEXTDIGIT="A";; | |||
| "11") NEXTDIGIT="B";; | |||
| "12") NEXTDIGIT="C";; | |||
| "13") NEXTDIGIT="D";; | |||
| "14") NEXTDIGIT="E";; | |||
| "15") NEXTDIGIT="F";; | |||
| "16") NEXTDIGIT="0";; | |||
| esac | |||
| RCOLOR="$RCOLOR$NEXTDIGIT" | |||
| done | |||
| echo $RCOLOR | |||
| } | |||
| # Main | |||
| BG='#141C21' # change to light bg | |||
| FG='#141C21' # change to dark fg | |||
| FGA='#FFFFFF' # change to gray fg | |||
| SH1=`get_random_color` | |||
| SH2=`get_random_color` | |||
| SH3=`get_random_color` | |||
| SH4=`get_random_color` | |||
| SH5=`get_random_color` | |||
| SH6=`get_random_color` | |||
| SH7=`get_random_color` | |||
| SH8=`get_random_color` | |||
| change_color | |||
| @ -0,0 +1,10 @@ | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #141C21FF; | |||
| bg1: #FFAB91FF; | |||
| bg2: #FF8A65FF; | |||
| bg3: #FF7043FF; | |||
| fg: #FFFFFFFF; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 225px; | |||
| padding: 25px; | |||
| border: 0px 0px 0px 4px; | |||
| border-radius: 0px; | |||
| border-color: @bg3; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @bg2; | |||
| } | |||
| @ -0,0 +1,116 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @bg1; | |||
| border-radius: 0px; | |||
| width: 700px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 12px 15px 12px 15px; | |||
| background-color: @bg1; | |||
| text-color: @fga; | |||
| font: "Iosevka Nerd Font 12"; | |||
| } | |||
| entry { | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| placeholder-color: @fga; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 15px 0px 0px 15px; | |||
| margin: 0px 250px 0px 0px; | |||
| border-radius: 0px 50px 50px 0px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ prompt, entry ]; | |||
| background-color: @bg3; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| spacing: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 10px 10px 10px 10px; | |||
| columns: 3; | |||
| lines: 8; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg4; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bg; | |||
| text-color: @bg3; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 320px; | |||
| padding: 25px; | |||
| border: 0px 0px 0px 4px; | |||
| border-radius: 0px; | |||
| border-color: @bg3; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @bg2; | |||
| } | |||
| @ -0,0 +1,124 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @bg1; | |||
| border-radius: 0px; | |||
| width: 400px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 12px 15px 12px 15px; | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 10px 15px 10px 15px; | |||
| font: "Iosevka Nerd Font 12"; | |||
| background-color: @bg1; | |||
| text-color: @fga; | |||
| expand: false; | |||
| str: "直"; | |||
| } | |||
| entry { | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| placeholder-color: @fga; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 15px 0px 0px 15px; | |||
| margin: 0px 250px 0px 0px; | |||
| border-radius: 0px 50px 50px 0px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @bg2; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| spacing: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 10px 10px 10px 10px; | |||
| columns: 1; | |||
| lines: 8; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg4; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px 8px 8px -4px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bg; | |||
| text-color: @bg3; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg; | |||
| } | |||
| @ -0,0 +1,124 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @bg1; | |||
| border-radius: 0px; | |||
| width: 300px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 12px 15px 12px 15px; | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 10px 15px 10px 15px; | |||
| font: "Iosevka Nerd Font 12"; | |||
| background-color: @bg1; | |||
| text-color: @fga; | |||
| expand: false; | |||
| str: ""; | |||
| } | |||
| entry { | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| placeholder-color: @fga; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 15px 0px 0px 15px; | |||
| margin: 0px 250px 0px 0px; | |||
| border-radius: 0px 50px 50px 0px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @bg2; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| spacing: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 10px 10px 10px 10px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg4; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px 8px 8px -25px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bg; | |||
| text-color: @bg3; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg; | |||
| } | |||
| @ -0,0 +1,124 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @bg1; | |||
| border-radius: 0px; | |||
| width: 300px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 12px 15px 12px 15px; | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 10px 15px 10px 15px; | |||
| font: "Iosevka Nerd Font 12"; | |||
| background-color: @bg1; | |||
| text-color: @fga; | |||
| expand: false; | |||
| str: ""; | |||
| } | |||
| entry { | |||
| background-color: @bg2; | |||
| text-color: @fga; | |||
| placeholder-color: @fga; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 10px 15px 10px 15px; | |||
| margin: 0px 250px 0px 0px; | |||
| border-radius: 0px 50px 50px 0px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, entry ]; | |||
| background-color: @bg2; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| spacing: 0px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 10px 10px 10px 10px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg4; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px 8px 8px -25px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bg; | |||
| text-color: @bg3; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @bg; | |||
| } | |||
| @ -0,0 +1,45 @@ | |||
| #!/usr/bin/env bash | |||
| NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg | |||
| get_total_updates() { UPDATES=$(checkupdates 2>/dev/null | wc -l); } | |||
| while true; do | |||
| get_total_updates | |||
| # notify user of updates | |||
| if hash notify-send &>/dev/null; then | |||
| if (( UPDATES > 50 )); then | |||
| notify-send -u critical -i $NOTIFY_ICON \ | |||
| "You really need to update!!" "$UPDATES New packages" | |||
| elif (( UPDATES > 25 )); then | |||
| notify-send -u normal -i $NOTIFY_ICON \ | |||
| "You should update soon" "$UPDATES New packages" | |||
| elif (( UPDATES > 2 )); then | |||
| notify-send -u low -i $NOTIFY_ICON \ | |||
| "$UPDATES New packages" | |||
| fi | |||
| fi | |||
| # when there are updates available | |||
| # every 10 seconds another check for updates is done | |||
| while (( UPDATES > 0 )); do | |||
| if (( UPDATES == 1 )); then | |||
| echo " $UPDATES" | |||
| elif (( UPDATES > 1 )); then | |||
| echo " $UPDATES" | |||
| else | |||
| echo " None" | |||
| fi | |||
| sleep 10 | |||
| get_total_updates | |||
| done | |||
| # when no updates are available, use a longer loop, this saves on CPU | |||
| # and network uptime, only checking once every 30 min for new updates | |||
| while (( UPDATES == 0 )); do | |||
| echo " None" | |||
| sleep 1800 | |||
| get_total_updates | |||
| done | |||
| done | |||
| @ -0,0 +1,288 @@ | |||
| ;; ┌──────────────────────────────────────────────────────────────────────────────-----┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█░█░█▀▀░█▀▀░█▀▄░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ │ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░▀▀█░█▀▀░█▀▄░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ │ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ │ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └──────────────────────────────────────────────────────────────────────────────-----┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/updates] | |||
| type = custom/script | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; Command to be executed (using "/usr/bin/env sh -c [command]") | |||
| exec = ~/.config/polybar/colorblocks/scripts/updates.sh | |||
| ; Conditional command that, if defined, needs to exit successfully | |||
| ; before the main exec command is invoked. | |||
| ; Default: "" | |||
| ;;exec-if = "" | |||
| ; Will the script output continous content? | |||
| ; Default: false | |||
| tail = true | |||
| ; Seconds to sleep between updates | |||
| ; Default: 2 (0 if `tail = true`) | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <output> - deprecated | |||
| ; <label> (default) | |||
| format = <label> | |||
| format-prefix = | |||
| format-prefix-font = 2 | |||
| format-background = ${color.shade8} | |||
| format-foreground = ${color.foreground} | |||
| format-padding = 2 | |||
| ; Available tokens: | |||
| ; %output% | |||
| ; Default: %output% | |||
| label = %output% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c [command]" | |||
| click-left = exo-open --launch TerminalEmulator & | |||
| click-right = exo-open --launch TerminalEmulator & | |||
| ;;double-click-left = echo double left %counter% | |||
| ;;double-click-middle = echo double middle %counter% | |||
| ;;double-click-right = echo double right %counter% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c [command]" | |||
| ;;scroll-up = echo scroll up %counter% | |||
| ;;scroll-down = echo scroll down %counter% | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/launcher] | |||
| type = custom/text | |||
| content = | |||
| ; "content" has the same properties as "format-NAME" | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.shade4} | |||
| content-padding = 2 | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| click-left = ~/.config/polybar/colorblocks/scripts/launcher.sh & | |||
| ;;click-middle = ~/.config/polybar/colorblocks/scripts/launcher-full | |||
| click-right = ~/.config/polybar/colorblocks/scripts/color-switch.sh & | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| ;;scroll-up = ~/.config/polybar/colorblocks/scripts/launcher.sh & | |||
| ;;scroll-down = ~/.config/polybar/colorblocks/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/sysmenu] | |||
| type = custom/text | |||
| content = | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.shade4} | |||
| content-padding = 2 | |||
| click-left = ~/.config/polybar/colorblocks/scripts/powermenu.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/color-switch] | |||
| type = custom/text | |||
| content = | |||
| content-background = #FFFFFF | |||
| content-foreground = #CC6666 | |||
| content-padding = 2 | |||
| click-left = ~/.config/polybar/colorblocks/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/sep] | |||
| type = custom/text | |||
| content = " " | |||
| content-background = ${color.alpha} | |||
| content-foreground = ${color.alpha} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/links] | |||
| type = custom/text | |||
| content-background = ${color.background} | |||
| content-padding = 2 | |||
| content-font = 2 | |||
| [module/google] | |||
| inherit = module/links | |||
| content = | |||
| content-foreground = ${color.shade7} | |||
| click-left = exo-open https://www.google.com/ & | |||
| [module/github] | |||
| inherit = module/links | |||
| content = | |||
| content-foreground = ${color.shade6} | |||
| click-left = exo-open https://www.github.com/ & | |||
| [module/reddit] | |||
| inherit = module/links | |||
| content = | |||
| content-foreground = ${color.shade5} | |||
| click-left = exo-open https://www.reddit.com/ & | |||
| [module/gmail] | |||
| inherit = module/links | |||
| content = | |||
| content-foreground = ${color.shade4} | |||
| click-left = exo-open https://mail.google.com/ & | |||
| [module/twitter] | |||
| inherit = module/links | |||
| content = | |||
| content-foreground = ${color.shade3} | |||
| click-left = exo-open https://www.twitter.com/ & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/powermenu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = " Reboot " | |||
| menu-0-0-background = ${color.background} | |||
| menu-0-0-foreground = ${color.foreground-alt} | |||
| menu-0-0-exec = menu-open-1 | |||
| menu-0-1 = " Shutdown " | |||
| menu-0-1-background = ${color.background} | |||
| menu-0-1-foreground = ${color.foreground-alt} | |||
| menu-0-1-exec = menu-open-2 | |||
| menu-1-0 = " Back " | |||
| menu-1-0-background = ${color.background} | |||
| menu-1-0-foreground = ${color.foreground-alt} | |||
| menu-1-0-exec = menu-open-0 | |||
| menu-1-1 = " Reboot " | |||
| menu-1-1-background = ${color.background} | |||
| menu-1-1-foreground = ${color.foreground-alt} | |||
| menu-1-1-exec = systemctl reboot | |||
| menu-2-0 = " Shutdown " | |||
| menu-2-0-background = ${color.background} | |||
| menu-2-0-foreground = ${color.foreground-alt} | |||
| menu-2-0-exec = systemctl poweroff | |||
| menu-2-1 = " Back " | |||
| menu-2-1-background = ${color.background} | |||
| menu-2-1-foreground = ${color.foreground-alt} | |||
| menu-2-1-exec = menu-open-0 | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle><menu> | |||
| format-background = ${color.background} | |||
| format-foreground = ${color.foreground} | |||
| label-open = | |||
| label-open-background = ${color.background} | |||
| label-open-foreground = ${color.shade4} | |||
| label-open-padding = 2 | |||
| label-open-font = 1 | |||
| label-close = | |||
| label-close-background = ${color.background} | |||
| label-close-foreground = ${color.shade4} | |||
| label-close-padding = 2 | |||
| label-close-font = 2 | |||
| ; Optional item separator | |||
| ; Default: none | |||
| label-separator = " | " | |||
| label-separator-background = ${color.background} | |||
| label-separator-foreground = ${color.shade4} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/menu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = Menu | |||
| menu-0-0-background = ${color.background} | |||
| menu-0-0-foreground = ${color.foreground-alt} | |||
| menu-0-0-exec = ~/.config/polybar/colorblocks/scripts/launcher.sh & | |||
| menu-0-1 = Files | |||
| menu-0-1-background = ${color.background} | |||
| menu-0-1-foreground = ${color.foreground-alt} | |||
| menu-0-1-exec = thunar & | |||
| menu-0-2 = Terminal | |||
| menu-0-2-background = ${color.background} | |||
| menu-0-2-foreground = ${color.foreground-alt} | |||
| menu-0-2-exec = termite & | |||
| menu-0-3 =" Browser " | |||
| menu-0-3-background = ${color.background} | |||
| menu-0-3-foreground = ${color.foreground-alt} | |||
| menu-0-3-exec = firefox & | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle><menu> | |||
| format-background = ${color.background} | |||
| label-open = | |||
| label-open-background = ${color.background} | |||
| label-open-foreground = ${color.shade4} | |||
| label-open-padding = 2 | |||
| label-open-font = 2 | |||
| label-close = | |||
| label-close-background = ${color.background} | |||
| label-close-foreground = ${color.shade4} | |||
| label-close-padding = 2 | |||
| label-close-font = 2 | |||
| ; Optional item separator | |||
| ; Default: none | |||
| label-separator = " | " | |||
| label-separator-background = ${color.background} | |||
| label-separator-foreground = ${color.shade4} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,542 @@ | |||
| ;; ┌────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▄░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▄░█▀█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀░░▀░▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar] | |||
| fill = ﭳ | |||
| empty = ﭳ | |||
| indicator = | |||
| width = 6 | |||
| format = %{T4}%fill%%indicator%%empty%%{F-}%{T-} | |||
| [module/volume] | |||
| type = internal/alsa | |||
| ; Soundcard to be used | |||
| ; Usually in the format hw:# where # is the card number | |||
| ; You can find the different card numbers in `/proc/asound/cards` | |||
| master-soundcard = default | |||
| speaker-soundcard = default | |||
| headphone-soundcard = default | |||
| ; Name of the master, speaker and headphone mixers | |||
| ; Use the following command to list available mixer controls: | |||
| ; $ amixer scontrols | sed -nr "s/.*'([[:alnum:]]+)'.*/\1/p" | |||
| ; If master, speaker or headphone-soundcard isn't the default, | |||
| ; use `amixer -c # scontrols` instead where # is the number | |||
| ; of the master, speaker or headphone soundcard respectively | |||
| ; | |||
| ; Default: Master | |||
| master-mixer = Master | |||
| ; Optionally define speaker and headphone mixers | |||
| ; Default: none | |||
| ;;speaker-mixer = Speaker | |||
| ; Default: none | |||
| ;;headphone-mixer = Headphone | |||
| ; NOTE: This is required if headphone_mixer is defined | |||
| ; Use the following command to list available device controls | |||
| ; $ amixer controls | sed -r "/CARD/\!d; s/.*=([0-9]+).*name='([^']+)'.*/printf '%3.0f: %s\n' '\1' '\2'/e" | sort | |||
| ; You may also need to use `amixer -c # controls` as above for the mixer names | |||
| ; Default: none | |||
| ;;headphone-id = 9 | |||
| ; Use volume mapping (similar to amixer -M and alsamixer), where the increase in volume is linear to the ear | |||
| ; Default: false | |||
| ;;mapped = true | |||
| ; Interval for volume increase/decrease (in percent points) | |||
| ; Default: 5 | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <label-volume> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-volume = <ramp-volume> <bar-volume> | |||
| format-volume-background = ${color.background} | |||
| format-volume-padding = 1 | |||
| ; Available tags: | |||
| ; <label-muted> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-muted = <label-muted> | |||
| format-muted-prefix = | |||
| format-muted-background = ${color.background} | |||
| format-muted-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-volume = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default | |||
| label-muted = " Muted" | |||
| label-muted-foreground = ${color.foreground} | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-volume-0 = | |||
| ramp-volume-1 = | |||
| ramp-volume-2 = | |||
| ; Only applies if <bar-volume> is used | |||
| bar-volume-format = ${bar.format} | |||
| bar-volume-width = ${bar.width} | |||
| bar-volume-gradient = false | |||
| bar-volume-indicator = ${bar.indicator} | |||
| bar-volume-indicator-foreground = ${color.foreground} | |||
| bar-volume-fill = ${bar.fill} | |||
| bar-volume-foreground-0 = ${color.green} | |||
| bar-volume-foreground-1 = ${color.green} | |||
| bar-volume-foreground-2 = ${color.yellow} | |||
| bar-volume-foreground-3 = ${color.yellow} | |||
| bar-volume-foreground-4 = ${color.red} | |||
| bar-volume-empty = ${bar.empty} | |||
| bar-volume-empty-foreground = ${color.foreground-alt} | |||
| ; If defined, it will replace <ramp-volume> when | |||
| ; headphones are plugged in to `headphone_control_numid` | |||
| ; If undefined, <ramp-volume> will be used for both | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-headphones-0 = | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/brightness] | |||
| ;type = internal/xbacklight | |||
| type = internal/backlight | |||
| ; Use the following command to list available cards: | |||
| ; $ ls -1 /sys/class/backlight/ | |||
| ;card = intel_backlight | |||
| card = amdgpu_bl0 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <ramp> | |||
| ; <bar> | |||
| format = <ramp> <bar> | |||
| format-background = ${color.background} | |||
| format-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label = %percentage%% | |||
| ; Only applies if <ramp> is used | |||
| ramp-0 = | |||
| ramp-1 = | |||
| ramp-2 = | |||
| ramp-3 = | |||
| ramp-4 = | |||
| ; Only applies if <bar> is used | |||
| bar-format = ${bar.format} | |||
| bar-width = ${bar.width} | |||
| bar-gradient = false | |||
| bar-indicator = ${bar.indicator} | |||
| bar-indicator-foreground = ${color.foreground} | |||
| bar-fill = ${bar.fill} | |||
| bar-foreground-0 = ${color.green} | |||
| bar-foreground-1 = ${color.green} | |||
| bar-foreground-2 = ${color.yellow} | |||
| bar-foreground-3 = ${color.yellow} | |||
| bar-foreground-4 = ${color.red} | |||
| bar-empty = ${bar.empty} | |||
| bar-empty-foreground = ${color.foreground-alt} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/battery_bar] | |||
| type = internal/battery | |||
| ; This is useful in case the battery never reports 100% charge | |||
| full-at = 99 | |||
| ; Use the following command to list batteries and adapters: | |||
| ; $ ls -1 /sys/class/power_supply/ | |||
| battery = BAT1 | |||
| adapter = ACAD | |||
| ; If an inotify event haven't been reported in this many | |||
| ; seconds, manually poll for new values. | |||
| ; | |||
| ; Needed as a fallback for systems that don't report events | |||
| ; on sysfs/procfs. | |||
| ; | |||
| ; Disable polling by setting the interval to 0. | |||
| ; | |||
| ; Default: 5 | |||
| poll-interval = 2 | |||
| ; see "man date" for details on how to format the time string | |||
| ; NOTE: if you want to use syntax tags here you need to use %%{...} | |||
| ; Default: %H:%M:%S | |||
| time-format = %H:%M | |||
| ; Available tags: | |||
| ; <label-charging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-charging> | |||
| format-charging = <bar-capacity> | |||
| format-charging-prefix = " " | |||
| format-charging-background = ${color.background} | |||
| format-charging-padding = 1 | |||
| ; Available tags: | |||
| ; <label-discharging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-discharging> | |||
| format-discharging = <bar-capacity> | |||
| format-discharging-prefix = " " | |||
| format-discharging-background = ${color.background} | |||
| format-discharging-padding = 1 | |||
| ; Available tags: | |||
| ; <label-full> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| format-full = <label-full> | |||
| format-full-prefix = " " | |||
| format-full-background = ${color.background} | |||
| format-full-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current charge rate in watts) | |||
| label-charging = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current discharge rate in watts) | |||
| label-discharging = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-full = " Full" | |||
| ; Only applies if <bar-capacity> is used | |||
| bar-capacity-format = ${bar.format} | |||
| bar-capacity-width = ${bar.width} | |||
| bar-capacity-gradient = false | |||
| bar-capacity-indicator = ${bar.indicator} | |||
| bar-capacity-indicator-foreground = ${color.foreground} | |||
| bar-capacity-fill = ${bar.fill} | |||
| bar-capacity-foreground-0 = ${color.green} | |||
| bar-capacity-foreground-1 = ${color.green} | |||
| bar-capacity-foreground-2 = ${color.yellow} | |||
| bar-capacity-foreground-3 = ${color.yellow} | |||
| bar-capacity-foreground-4 = ${color.red} | |||
| bar-capacity-empty = ${bar.empty} | |||
| bar-capacity-empty-foreground = ${color.foreground-alt} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/cpu_bar] | |||
| type = internal/cpu | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 0.5 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-load> | |||
| ; <ramp-load> | |||
| ; <ramp-coreload> | |||
| ;;format = <label> <ramp-coreload> | |||
| format = <bar-load> <label> | |||
| format-prefix = " " | |||
| format-background = ${color.background} | |||
| format-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage% (default) - total cpu load averaged over all cores | |||
| ; %percentage-sum% - Cumulative load on all cores | |||
| ; %percentage-cores% - load percentage for each core | |||
| ; %percentage-core[1-9]% - load percentage for specific core | |||
| label = "%percentage%%" | |||
| ; Only applies if <bar-load> is used | |||
| bar-load-format = ${bar.format} | |||
| bar-load-width = ${bar.width} | |||
| bar-load-gradient = false | |||
| bar-load-indicator = ${bar.indicator} | |||
| bar-load-indicator-foreground = ${color.foreground} | |||
| bar-load-fill = ${bar.fill} | |||
| bar-load-foreground-0 = ${color.green} | |||
| bar-load-foreground-1 = ${color.green} | |||
| bar-load-foreground-2 = ${color.yellow} | |||
| bar-load-foreground-3 = ${color.yellow} | |||
| bar-load-foreground-4 = ${color.red} | |||
| bar-load-empty = ${bar.empty} | |||
| bar-load-empty-foreground = ${color.foreground-alt} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/filesystem_bar] | |||
| type = internal/fs | |||
| ; Mountpoints to display | |||
| mount-0 = / | |||
| ;;mount-1 = /home | |||
| ;;mount-2 = /var | |||
| ; Seconds to sleep between updates | |||
| ; Default: 30 | |||
| interval = 30 | |||
| ; Display fixed precision values | |||
| ; Default: false | |||
| fixed-values = false | |||
| ; Spacing between entries | |||
| ; Default: 2 | |||
| ;;spacing = 4 | |||
| ; Available tags: | |||
| ; <label-mounted> (default) | |||
| ; <bar-free> | |||
| ; <bar-used> | |||
| ; <ramp-capacity> | |||
| format-mounted = <bar-used> <label-mounted> | |||
| format-mounted-prefix = " " | |||
| format-mounted-background = ${color.background} | |||
| format-mounted-padding = 1 | |||
| ; Available tags: | |||
| ; <label-unmounted> (default) | |||
| format-unmounted = <label-unmounted> | |||
| format-unmounted-prefix = " " | |||
| format-unmounted-background = ${color.background} | |||
| format-unmounted-padding = 1 | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; %type% | |||
| ; %fsname% | |||
| ; %percentage_free% | |||
| ; %percentage_used% | |||
| ; %total% | |||
| ; %free% | |||
| ; %used% | |||
| ; Default: %mountpoint% %percentage_free%% | |||
| label-mounted = %used%/%total% | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; Default: %mountpoint% is not mounted | |||
| label-unmounted = "%mountpoint%: not mounted" | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-format = ${bar.format} | |||
| bar-used-width = ${bar.width} | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.green} | |||
| bar-used-foreground-1 = ${color.green} | |||
| bar-used-foreground-2 = ${color.yellow} | |||
| bar-used-foreground-3 = ${color.yellow} | |||
| bar-used-foreground-4 = ${color.red} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.foreground-alt} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/memory_bar] | |||
| type = internal/memory | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 2 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-used> | |||
| ; <bar-free> | |||
| ; <ramp-used> | |||
| ; <ramp-free> | |||
| ; <bar-swap-used> | |||
| ; <bar-swap-free> | |||
| ; <ramp-swap-used> | |||
| ; <ramp-swap-free> | |||
| format = <bar-used> <label> | |||
| format-prefix = " " | |||
| format-background = ${color.background} | |||
| format-padding = 1 | |||
| ; Available tokens: | |||
| ; %percentage_used% (default) | |||
| ; %percentage_free% | |||
| ; %gb_used% | |||
| ; %gb_free% | |||
| ; %gb_total% | |||
| ; %mb_used% | |||
| ; %mb_free% | |||
| ; %mb_total% | |||
| ; %percentage_swap_used% | |||
| ; %percentage_swap_free% | |||
| ; %mb_swap_total% | |||
| ; %mb_swap_free% | |||
| ; %mb_swap_used% | |||
| ; %gb_swap_total% | |||
| ; %gb_swap_free% | |||
| ; %gb_swap_used% | |||
| label = "%mb_used%" | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-format = ${bar.format} | |||
| bar-used-width = ${bar.width} | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.green} | |||
| bar-used-foreground-1 = ${color.green} | |||
| bar-used-foreground-2 = ${color.yellow} | |||
| bar-used-foreground-3 = ${color.yellow} | |||
| bar-used-foreground-4 = ${color.red} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.foreground-alt} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/mpd_bar] | |||
| type = internal/mpd | |||
| ; Host where mpd is running (either ip or domain name) | |||
| ; Can also be the full path to a unix socket where mpd is running. | |||
| ;;host = 127.0.0.1 | |||
| ;;port = 6600 | |||
| ;;password = mysecretpassword | |||
| ; Seconds to sleep between progressbar/song timer sync | |||
| ; Default: 1 | |||
| interval = 1 | |||
| ; Available tags: | |||
| ; <label-song> (default) | |||
| ; <label-time> | |||
| ; <bar-progress> | |||
| ; <toggle> - gets replaced with <icon-(pause|play)> | |||
| ; <toggle-stop> - gets replaced with <icon-(stop|play)> | |||
| ; <icon-random> | |||
| ; <icon-repeat> | |||
| ; <icon-repeatone> (deprecated) | |||
| ; <icon-single> - Toggle playing only a single song. Replaces <icon-repeatone> | |||
| ; <icon-consume> | |||
| ; <icon-prev> | |||
| ; <icon-stop> | |||
| ; <icon-play> | |||
| ; <icon-pause> | |||
| ; <icon-next> | |||
| ; <icon-seekb> | |||
| ; <icon-seekf> | |||
| format-online = <label-song> <bar-progress> <label-time> | |||
| format-online-prefix = | |||
| format-online-background = ${color.background} | |||
| format-online-padding = 1 | |||
| ;format-playing = ${self.format-online} | |||
| ;format-paused = ${self.format-online} | |||
| ;format-stopped = ${self.format-online} | |||
| ; Available tags: | |||
| ; <label-offline> | |||
| format-offline = <label-offline> | |||
| format-offline-prefix = | |||
| format-offline-background = ${color.background} | |||
| format-offline-padding = 1 | |||
| ; Available tokens: | |||
| ; %artist% | |||
| ; %album-artist% | |||
| ; %album% | |||
| ; %date% | |||
| ; %title% | |||
| ; Default: %artist% - %title% | |||
| label-song = " %artist% - %title%" | |||
| label-song-maxlen = 25 | |||
| label-song-ellipsis = true | |||
| ; Available tokens: | |||
| ; %elapsed% | |||
| ; %total% | |||
| ; Default: %elapsed% / %total% | |||
| label-time = %elapsed% / %total% | |||
| ; Available tokens: | |||
| ; None | |||
| label-offline = " Offline" | |||
| ; Only applies if <icon-X> is used | |||
| icon-play = | |||
| icon-pause = | |||
| icon-stop = | |||
| icon-next = | |||
| icon-prev = | |||
| icon-seekf = | |||
| icon-seekb = | |||
| icon-random = | |||
| icon-repeat = | |||
| icon-repeatone = | |||
| icon-single = | |||
| icon-consume = | |||
| ; Used to display the state of random/repeat/repeatone/single | |||
| ; Only applies if <icon-[random|repeat|repeatone|single]> is used | |||
| toggle-on-foreground = ${color.green} | |||
| toggle-off-foreground = ${color.red} | |||
| ; Only applies if <bar-progress> is used | |||
| bar-progress-format = ${bar.format} | |||
| bar-progress-width = ${bar.width} | |||
| bar-progress-gradient = false | |||
| bar-progress-indicator = ${bar.indicator} | |||
| bar-progress-indicator-foreground = ${color.foreground} | |||
| bar-progress-fill = ${bar.fill} | |||
| bar-progress-foreground-0 = ${color.green} | |||
| bar-progress-foreground-1 = ${color.green} | |||
| bar-progress-foreground-2 = ${color.yellow} | |||
| bar-progress-foreground-3 = ${color.yellow} | |||
| bar-progress-foreground-4 = ${color.red} | |||
| bar-progress-empty = ${bar.empty} | |||
| bar-progress-empty-foreground = ${color.foreground-alt} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,24 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█░░░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░░░█░█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [color] | |||
| ;; Use pywal.sh in scripts directory to use colors from an image/wallpaper. | |||
| ;; main colors | |||
| background = #0a0a0a | |||
| background-alt = #8C0a0a0a | |||
| foreground = #f5f5f5 | |||
| foreground-alt = #33f5f5f5 | |||
| primary = #fdd835 | |||
| red = #FF5250 | |||
| green = #43a047 | |||
| yellow = #fdd835 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,312 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/cuts/bars.ini | |||
| include-file = ~/.config/polybar/cuts/colors.ini | |||
| include-file = ~/.config/polybar/cuts/modules.ini | |||
| include-file = ~/.config/polybar/cuts/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = false | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 100% | |||
| height = 28 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 0% | |||
| offset-y = 0% | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.background-alt} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| line-size = 2 | |||
| line-color = ${color.primary} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-size = 0 | |||
| border-color = ${color.primary} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 0 | |||
| module-margin-right = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| ; Text Fonts | |||
| font-0 = Iosevka Nerd Font:style=Medium:size=10;4 | |||
| ; Icons Fonts | |||
| font-1 = feather:style=Medium:size=12;3 | |||
| ; Powerline Glyphs | |||
| font-2 = Iosevka Nerd Font:style=Medium:size=19;3 | |||
| ; Larger font size for bar fill icons | |||
| font-3 = Iosevka Nerd Font:style=Medium:size=12;4 | |||
| ; Smaller font size for shorter spaces | |||
| font-4 = Iosevka Nerd Font:style=Medium:size=7;4 | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar/top] | |||
| inherit = bar/main | |||
| modules-left = launcher title decor1 decor2 workspaces decor1 decor2 color-switch decor1 | |||
| modules-right = decor4 updates decor3 decor4 temperature battery keyboard decor3 decor4 date sysmenu | |||
| enable-ipc = true | |||
| [bar/bottom] | |||
| inherit = bar/main | |||
| bottom = true | |||
| modules-left = mpd decor3 decor4 cpu memory filesystem decor3 | |||
| modules-right = decor2 network decor1 decor2 volume brightness | |||
| enable-ipc = true | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background-alt} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| ;enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,15 @@ | |||
| #!/usr/bin/env bash | |||
| # Add this script to your wm startup file. | |||
| DIR="$HOME/.config/polybar/cuts" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the bar | |||
| polybar -q top -c "$DIR"/config.ini & | |||
| polybar -q bottom -c "$DIR"/config.ini & | |||
| @ -0,0 +1,323 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀█░█▀▄░█▀▀░█░█░▀█▀░█▀▀░█░█░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▀░█▀▄░█▀▀░▀▄▀░░█░░█▀▀░█▄█░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░░░▀░▀░▀▀▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/cuts/bars.ini | |||
| include-file = ~/.config/polybar/cuts/colors.ini | |||
| include-file = ~/.config/polybar/cuts/modules.ini | |||
| include-file = ~/.config/polybar/cuts/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = false | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 100% | |||
| height = 28 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 0% | |||
| offset-y = 0% | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.background-alt} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| line-size = 2 | |||
| line-color = ${color.primary} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-size = 0 | |||
| border-color = ${color.primary} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 0 | |||
| module-margin-right = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| ; Text Fonts | |||
| font-0 = Iosevka Nerd Font:style=Medium:size=10;4 | |||
| ; Icons Fonts | |||
| font-1 = feather:style=Medium:size=12;3 | |||
| ; Powerline Glyphs | |||
| font-2 = Iosevka Nerd Font:style=Medium:size=19;3 | |||
| ; Larger font size for bar fill icons | |||
| font-3 = Iosevka Nerd Font:style=Medium:size=12;4 | |||
| ; Smaller font size for shorter spaces | |||
| font-4 = Iosevka Nerd Font:style=Medium:size=7;4 | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar/top] | |||
| inherit = bar/main | |||
| bottom = true | |||
| offset-y = 71 | |||
| modules-left = launcher title decor1 decor2 workspaces decor1 decor2 color-switch decor1 | |||
| modules-right = decor4 updates decor3 decor4 temperature battery keyboard decor3 decor4 date sysmenu | |||
| enable-ipc = true | |||
| [bar/mid] | |||
| inherit = bar/main | |||
| bottom = true | |||
| offset-y = 38 | |||
| modules-left = menu decor1 decor2 mpd_bar decor1 decor2 term files browser settings decor1 decor2 cpu_bar decor1 | |||
| modules-right = decor4 memory_bar decor3 decor4 alsa backlight decor3 decor4 filesystem_bar decor3 decor4 battery_bar pulseaudio decor3 decor4 powermenu | |||
| enable-ipc = true | |||
| [bar/bottom] | |||
| inherit = bar/main | |||
| bottom = true | |||
| offset-y = 5 | |||
| modules-left = mpd decor3 decor4 cpu memory filesystem decor3 | |||
| modules-right = decor2 network decor1 decor2 volume brightness | |||
| enable-ipc = true | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background-alt} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| ;enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| DIR="$HOME/.config/polybar/cuts" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the preview bar | |||
| polybar -q top -c "$DIR"/preview.ini & | |||
| polybar -q mid -c "$DIR"/preview.ini & | |||
| polybar -q bottom -c "$DIR"/preview.ini & | |||
| @ -0,0 +1,117 @@ | |||
| #!/usr/bin/bash | |||
| # | |||
| # checkupdates: Safely print a list of pending updates. | |||
| # | |||
| # Copyright (c) 2013 Kyle Keen <keenerd@gmail.com> | |||
| # | |||
| # This program is free software; you can redistribute it and/or modify | |||
| # it under the terms of the GNU General Public License as published by | |||
| # the Free Software Foundation; either version 2 of the License, or | |||
| # (at your option) any later version. | |||
| # | |||
| # This program is distributed in the hope that it will be useful, | |||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
| # GNU General Public License for more details. | |||
| # | |||
| # You should have received a copy of the GNU General Public License | |||
| # along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| # | |||
| declare -r myname='checkupdates' | |||
| declare -r myver='1.0.0' | |||
| plain() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg2() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| ask() { | |||
| local mesg=$1; shift | |||
| printf "${BLUE}::${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&1 | |||
| } | |||
| warning() { | |||
| local mesg=$1; shift | |||
| printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| error() { | |||
| local mesg=$1; shift | |||
| printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| # check if messages are to be printed using color | |||
| unset ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if [[ -t 2 && ! $USE_COLOR = "n" ]]; then | |||
| # prefer terminal safe colored and bold text when tput is supported | |||
| if tput setaf 0 &>/dev/null; then | |||
| ALL_OFF="$(tput sgr0)" | |||
| BOLD="$(tput bold)" | |||
| BLUE="${BOLD}$(tput setaf 4)" | |||
| GREEN="${BOLD}$(tput setaf 2)" | |||
| RED="${BOLD}$(tput setaf 1)" | |||
| YELLOW="${BOLD}$(tput setaf 3)" | |||
| else | |||
| ALL_OFF="\e[1;0m" | |||
| BOLD="\e[1;1m" | |||
| BLUE="${BOLD}\e[1;34m" | |||
| GREEN="${BOLD}\e[1;32m" | |||
| RED="${BOLD}\e[1;31m" | |||
| YELLOW="${BOLD}\e[1;33m" | |||
| fi | |||
| fi | |||
| readonly ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if (( $# > 0 )); then | |||
| echo "${myname} v${myver}" | |||
| echo | |||
| echo "Safely print a list of pending updates" | |||
| echo | |||
| echo "Usage: ${myname}" | |||
| echo | |||
| echo 'Note: Export the "CHECKUPDATES_DB" variable to change the path of the temporary database.' | |||
| exit 0 | |||
| fi | |||
| if ! type -P fakeroot >/dev/null; then | |||
| error 'Cannot find the fakeroot binary.' | |||
| exit 1 | |||
| fi | |||
| if [[ -z $CHECKUPDATES_DB ]]; then | |||
| CHECKUPDATES_DB="${TMPDIR:-/tmp}/checkup-db-${USER}/" | |||
| fi | |||
| trap 'rm -f $CHECKUPDATES_DB/db.lck' INT TERM EXIT | |||
| DBPath="$(pacman-conf DBPath)" | |||
| if [[ -z "$DBPath" ]] || [[ ! -d "$DBPath" ]]; then | |||
| DBPath="/var/lib/pacman/" | |||
| fi | |||
| mkdir -p "$CHECKUPDATES_DB" | |||
| ln -s "${DBPath}/local" "$CHECKUPDATES_DB" &> /dev/null | |||
| if ! fakeroot -- pacman -Sy --dbpath "$CHECKUPDATES_DB" --logfile /dev/null &> /dev/null; then | |||
| error 'Cannot fetch updates' | |||
| exit 1 | |||
| fi | |||
| pacman -Qu --dbpath "$CHECKUPDATES_DB" 2> /dev/null | grep -v '\[.*\]' | |||
| exit 0 | |||
| # vim: set noet: | |||
| @ -0,0 +1,55 @@ | |||
| #!/usr/bin/env bash | |||
| SDIR="$HOME/.config/polybar/cuts/scripts" | |||
| # Launch Rofi | |||
| MENU="$(rofi -no-config -no-lazy-grab -sep "|" -dmenu -i -p '' \ | |||
| -theme $SDIR/rofi/styles.rasi \ | |||
| <<< " amber| blue| blue-gray| brown| cyan| deep-orange|\ | |||
| deep-purple| green| gray| indigo| blue-light| green-light|\ | |||
| lime| orange| pink| purple| red| teal| yellow| amber-dark|\ | |||
| blue-dark| blue-gray-dark| brown-dark| cyan-dark| deep-orange-dark|\ | |||
| deep-purple-dark| green-dark| gray-dark| indigo-dark| blue-light-dark|\ | |||
| green-light-dark| lime-dark| orange-dark| pink-dark| purple-dark| red-dark| teal-dark| yellow-dark|")" | |||
| case "$MENU" in | |||
| ## Light Colors | |||
| *amber) "$SDIR"/colors-light.sh --amber ;; | |||
| *blue) "$SDIR"/colors-light.sh --blue ;; | |||
| *blue-gray) "$SDIR"/colors-light.sh --blue-gray ;; | |||
| *brown) "$SDIR"/colors-light.sh --brown ;; | |||
| *cyan) "$SDIR"/colors-light.sh --cyan ;; | |||
| *deep-orange) "$SDIR"/colors-light.sh --deep-orange ;; | |||
| *deep-purple) "$SDIR"/colors-light.sh --deep-purple ;; | |||
| *green) "$SDIR"/colors-light.sh --green ;; | |||
| *gray) "$SDIR"/colors-light.sh --gray ;; | |||
| *indigo) "$SDIR"/colors-light.sh --indigo ;; | |||
| *blue-light) "$SDIR"/colors-light.sh --light-blue ;; | |||
| *green-light) "$SDIR"/colors-light.sh --light-green ;; | |||
| *lime) "$SDIR"/colors-light.sh --lime ;; | |||
| *orange) "$SDIR"/colors-light.sh --orange ;; | |||
| *pink) "$SDIR"/colors-light.sh --pink ;; | |||
| *purple) "$SDIR"/colors-light.sh --purple ;; | |||
| *red) "$SDIR"/colors-light.sh --red ;; | |||
| *teal) "$SDIR"/colors-light.sh --teal ;; | |||
| *yellow) "$SDIR"/colors-light.sh --yellow ;; | |||
| ## Dark Colors | |||
| *amber-dark) "$SDIR"/colors-dark.sh --amber ;; | |||
| *blue-dark) "$SDIR"/colors-dark.sh --blue ;; | |||
| *blue-gray-dark) "$SDIR"/colors-dark.sh --blue-gray ;; | |||
| *brown-dark) "$SDIR"/colors-dark.sh --brown ;; | |||
| *cyan-dark) "$SDIR"/colors-dark.sh --cyan ;; | |||
| *deep-orange-dark) "$SDIR"/colors-dark.sh --deep-orange ;; | |||
| *deep-purple-dark) "$SDIR"/colors-dark.sh --deep-purple ;; | |||
| *green-dark) "$SDIR"/colors-dark.sh --green ;; | |||
| *gray-dark) "$SDIR"/colors-dark.sh --gray ;; | |||
| *indigo-dark) "$SDIR"/colors-dark.sh --indigo ;; | |||
| *blue-light-dark) "$SDIR"/colors-dark.sh --light-blue ;; | |||
| *green-light-dark) "$SDIR"/colors-dark.sh --light-green ;; | |||
| *lime-dark) "$SDIR"/colors-dark.sh --lime ;; | |||
| *orange-dark) "$SDIR"/colors-dark.sh --orange ;; | |||
| *pink-dark) "$SDIR"/colors-dark.sh --pink ;; | |||
| *purple-dark) "$SDIR"/colors-dark.sh --purple ;; | |||
| *red-dark) "$SDIR"/colors-dark.sh --red ;; | |||
| *teal-dark) "$SDIR"/colors-dark.sh --teal ;; | |||
| *yellow-dark) "$SDIR"/colors-dark.sh --yellow | |||
| esac | |||
| @ -0,0 +1,102 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/cuts/colors.ini" | |||
| RFILE="$HOME/.config/polybar/cuts/scripts/rofi/colors.rasi" | |||
| BG="0a0a0a" | |||
| FG="f5f5f5" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = #${BG}/g" $PFILE | |||
| sed -i -e "s/background-alt = #.*/background-alt = #8C${BG}/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = #${FG}/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = #33${FG}/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #${BG}BF; | |||
| bga: #${BG}FF; | |||
| fg: #${FG}FF; | |||
| ac: ${AC}FF; | |||
| se: ${AC}1A; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--amber" ]]; then | |||
| AC="#ffb300" | |||
| change_color | |||
| elif [[ $1 = "--blue" ]]; then | |||
| AC="#1e88e5" | |||
| change_color | |||
| elif [[ $1 = "--blue-gray" ]]; then | |||
| AC="#546e7a" | |||
| change_color | |||
| elif [[ $1 = "--brown" ]]; then | |||
| AC="#6d4c41" | |||
| change_color | |||
| elif [[ $1 = "--cyan" ]]; then | |||
| AC="#00acc1" | |||
| change_color | |||
| elif [[ $1 = "--deep-orange" ]]; then | |||
| AC="#f4511e" | |||
| change_color | |||
| elif [[ $1 = "--deep-purple" ]]; then | |||
| AC="#5e35b1" | |||
| change_color | |||
| elif [[ $1 = "--green" ]]; then | |||
| AC="#43a047" | |||
| change_color | |||
| elif [[ $1 = "--gray" ]]; then | |||
| AC="#757575" | |||
| change_color | |||
| elif [[ $1 = "--indigo" ]]; then | |||
| AC="#3949ab" | |||
| change_color | |||
| elif [[ $1 = "--light-blue" ]]; then | |||
| AC="#039be5" | |||
| change_color | |||
| elif [[ $1 = "--light-green" ]]; then | |||
| AC="#7cb342" | |||
| change_color | |||
| elif [[ $1 = "--lime" ]]; then | |||
| AC="#c0ca33" | |||
| change_color | |||
| elif [[ $1 = "--orange" ]]; then | |||
| AC="#fb8c00" | |||
| change_color | |||
| elif [[ $1 = "--pink" ]]; then | |||
| AC="#d81b60" | |||
| change_color | |||
| elif [[ $1 = "--purple" ]]; then | |||
| AC="#8e24aa" | |||
| change_color | |||
| elif [[ $1 = "--red" ]]; then | |||
| AC="#e53935" | |||
| change_color | |||
| elif [[ $1 = "--teal" ]]; then | |||
| AC="#00897b" | |||
| change_color | |||
| elif [[ $1 = "--yellow" ]]; then | |||
| AC="#fdd835" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --amber --blue --blue-gray --brown | |||
| --cyan --deep-orange --deep-purple --green | |||
| --gray --indigo --light-blue --light-green | |||
| --lime --orange --pink --purple | |||
| --red --teal --yellow | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,102 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/cuts/colors.ini" | |||
| RFILE="$HOME/.config/polybar/cuts/scripts/rofi/colors.rasi" | |||
| BG="FFFFFF" | |||
| FG="0A0A0A" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = #${BG}/g" $PFILE | |||
| sed -i -e "s/background-alt = #.*/background-alt = #8C${BG}/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = #${FG}/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = #33${FG}/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #${BG}BF; | |||
| bga: #${BG}FF; | |||
| fg: #${FG}FF; | |||
| ac: ${AC}FF; | |||
| se: ${AC}1A; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--amber" ]]; then | |||
| AC="#ffb300" | |||
| change_color | |||
| elif [[ $1 = "--blue" ]]; then | |||
| AC="#1e88e5" | |||
| change_color | |||
| elif [[ $1 = "--blue-gray" ]]; then | |||
| AC="#546e7a" | |||
| change_color | |||
| elif [[ $1 = "--brown" ]]; then | |||
| AC="#6d4c41" | |||
| change_color | |||
| elif [[ $1 = "--cyan" ]]; then | |||
| AC="#00acc1" | |||
| change_color | |||
| elif [[ $1 = "--deep-orange" ]]; then | |||
| AC="#f4511e" | |||
| change_color | |||
| elif [[ $1 = "--deep-purple" ]]; then | |||
| AC="#5e35b1" | |||
| change_color | |||
| elif [[ $1 = "--green" ]]; then | |||
| AC="#43a047" | |||
| change_color | |||
| elif [[ $1 = "--gray" ]]; then | |||
| AC="#757575" | |||
| change_color | |||
| elif [[ $1 = "--indigo" ]]; then | |||
| AC="#3949ab" | |||
| change_color | |||
| elif [[ $1 = "--light-blue" ]]; then | |||
| AC="#039be5" | |||
| change_color | |||
| elif [[ $1 = "--light-green" ]]; then | |||
| AC="#7cb342" | |||
| change_color | |||
| elif [[ $1 = "--lime" ]]; then | |||
| AC="#c0ca33" | |||
| change_color | |||
| elif [[ $1 = "--orange" ]]; then | |||
| AC="#fb8c00" | |||
| change_color | |||
| elif [[ $1 = "--pink" ]]; then | |||
| AC="#d81b60" | |||
| change_color | |||
| elif [[ $1 = "--purple" ]]; then | |||
| AC="#8e24aa" | |||
| change_color | |||
| elif [[ $1 = "--red" ]]; then | |||
| AC="#e53935" | |||
| change_color | |||
| elif [[ $1 = "--teal" ]]; then | |||
| AC="#00897b" | |||
| change_color | |||
| elif [[ $1 = "--yellow" ]]; then | |||
| AC="#fdd835" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --amber --blue --blue-gray --brown | |||
| --cyan --deep-orange --deep-purple --green | |||
| --gray --indigo --light-blue --light-green | |||
| --lime --orange --pink --purple | |||
| --red --teal --yellow | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,3 @@ | |||
| #!/usr/bin/env bash | |||
| rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/polybar/cuts/scripts/rofi/launcher.rasi | |||
| @ -0,0 +1,94 @@ | |||
| #!/usr/bin/env bash | |||
| ## Author : Aditya Shakya | |||
| ## Mail : adi1090x@gmail.com | |||
| ## Github : @adi1090x | |||
| ## Twitter : @adi1090x | |||
| dir="~/.config/polybar/cuts/scripts/rofi" | |||
| uptime=$(uptime -p | sed -e 's/up //g') | |||
| rofi_command="rofi -theme $dir/powermenu.rasi" | |||
| # Options | |||
| shutdown=" Shutdown" | |||
| reboot=" Restart" | |||
| lock=" Lock" | |||
| suspend=" Sleep" | |||
| logout=" Logout" | |||
| # Confirmation | |||
| confirm_exit() { | |||
| rofi -dmenu\ | |||
| -i\ | |||
| -no-fixed-num-lines\ | |||
| -p "Are You Sure? : "\ | |||
| -theme $dir/confirm.rasi | |||
| } | |||
| # Message | |||
| msg() { | |||
| rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" | |||
| } | |||
| # Variable passed to rofi | |||
| options="$lock\n$suspend\n$logout\n$reboot\n$shutdown" | |||
| chosen="$(echo -e "$options" | $rofi_command -p "Uptime: $uptime" -dmenu -selected-row 0)" | |||
| case $chosen in | |||
| $shutdown) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl poweroff | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $reboot) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl reboot | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $lock) | |||
| if [[ -f /usr/bin/i3lock ]]; then | |||
| i3lock | |||
| elif [[ -f /usr/bin/betterlockscreen ]]; then | |||
| betterlockscreen -l | |||
| fi | |||
| ;; | |||
| $suspend) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| mpc -q pause | |||
| amixer set Master mute | |||
| systemctl suspend | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $logout) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| if [[ "$DESKTOP_SESSION" == "Openbox" ]]; then | |||
| openbox --exit | |||
| elif [[ "$DESKTOP_SESSION" == "bspwm" ]]; then | |||
| bspc quit | |||
| elif [[ "$DESKTOP_SESSION" == "i3" ]]; then | |||
| i3-msg exit | |||
| fi | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| esac | |||
| @ -0,0 +1,59 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/cuts/colors.ini" | |||
| RFILE="$HOME/.config/polybar/cuts/scripts/rofi/colors.rasi" | |||
| # Get colors | |||
| pywal_get() { | |||
| wal -i "$1" -q -t | |||
| } | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = #${BG}/g" $PFILE | |||
| sed -i -e "s/background-alt = #.*/background-alt = #8C${BG}/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = #${FG}/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = #33${FG}/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #${BG}BF; | |||
| bga: #${BG}FF; | |||
| fg: #${FG}FF; | |||
| ac: ${AC}FF; | |||
| se: ${AC}1A; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| # Main | |||
| if [[ -f "/usr/bin/wal" ]]; then | |||
| if [[ "$1" ]]; then | |||
| pywal_get "$1" | |||
| # Source the pywal color file | |||
| . "$HOME/.cache/wal/colors.sh" | |||
| BGC=`printf "%s\n" "$background"` | |||
| BG=${BGC:1} | |||
| FGC=`printf "%s\n" "$foreground"` | |||
| FG=${FGC:1} | |||
| AC=`printf "%s\n" "$color1"` | |||
| change_color | |||
| else | |||
| echo -e "[!] Please enter the path to wallpaper. \n" | |||
| echo "Usage : ./pywal.sh path/to/image" | |||
| fi | |||
| else | |||
| echo "[!] 'pywal' is not installed." | |||
| fi | |||
| @ -0,0 +1,91 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/cuts/colors.ini" | |||
| RFILE="$HOME/.config/polybar/cuts/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = #${BG}/g" $PFILE | |||
| sed -i -e "s/background-alt = #.*/background-alt = #8C${BG}/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = #${FG}/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = #33${FG}/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #${BG}BF; | |||
| bga: #${BG}FF; | |||
| fg: #${FG}FF; | |||
| ac: ${AC}FF; | |||
| se: ${AC}1A; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| get_random_number() { | |||
| RNUM=$(( ($RANDOM % $1) + 1 )) | |||
| } | |||
| get_random_color() { | |||
| RCOLOR="#" | |||
| for i in 1 2 3 4 5 6 | |||
| do | |||
| get_random_number "16" | |||
| case $RNUM in | |||
| "1") NEXTDIGIT="1";; | |||
| "2") NEXTDIGIT="2";; | |||
| "3") NEXTDIGIT="3";; | |||
| "4") NEXTDIGIT="4";; | |||
| "5") NEXTDIGIT="5";; | |||
| "6") NEXTDIGIT="6";; | |||
| "7") NEXTDIGIT="7";; | |||
| "8") NEXTDIGIT="8";; | |||
| "9") NEXTDIGIT="9";; | |||
| "10") NEXTDIGIT="A";; | |||
| "11") NEXTDIGIT="B";; | |||
| "12") NEXTDIGIT="C";; | |||
| "13") NEXTDIGIT="D";; | |||
| "14") NEXTDIGIT="E";; | |||
| "15") NEXTDIGIT="F";; | |||
| "16") NEXTDIGIT="0";; | |||
| esac | |||
| RCOLOR="$RCOLOR$NEXTDIGIT" | |||
| done | |||
| echo $RCOLOR | |||
| } | |||
| hex_to_rgb() { | |||
| # Convert a hex value WITHOUT the hashtag (#) | |||
| R=$(printf "%d" 0x${1:0:2}) | |||
| G=$(printf "%d" 0x${1:2:2}) | |||
| B=$(printf "%d" 0x${1:4:2}) | |||
| } | |||
| get_fg_color(){ | |||
| INTENSITY=$(calc "$R*0.299 + $G*0.587 + $B*0.114") | |||
| if [ $(echo "$INTENSITY>186" | bc) -eq 1 ]; then | |||
| FG="0a0a0a" | |||
| AC="#0a0a0a" | |||
| else | |||
| FG="F5F5F5" | |||
| AC="#F5F5F5" | |||
| fi | |||
| } | |||
| # Main | |||
| BGC=`get_random_color` | |||
| BG=${BGC:1} | |||
| HEX=$BG | |||
| hex_to_rgb $HEX | |||
| get_fg_color | |||
| change_color | |||
| @ -0,0 +1,10 @@ | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #0a0a0aBF; | |||
| bga: #0a0a0aFF; | |||
| fg: #f5f5f5FF; | |||
| ac: #fdd835FF; | |||
| se: #fdd8351A; | |||
| } | |||
| @ -0,0 +1,25 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 225px; | |||
| padding: 25px; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @ac; | |||
| } | |||
| @ -0,0 +1,115 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 500px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px; | |||
| background-color: @al; | |||
| text-color: @ac; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px 0px 0px 8px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ prompt, entry ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 6; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 2px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 320px; | |||
| padding: 25px; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @ac; | |||
| } | |||
| @ -0,0 +1,123 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 400px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px 0px 0px 5px; | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 0px 0px 0px 2px; | |||
| background-color: @al; | |||
| text-color: @ac; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 8; | |||
| spacing: 0px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px 8px 8px -15px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 2px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,123 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 300px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px 0px 0px 5px; | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 0px 0px 0px 2px; | |||
| background-color: @al; | |||
| text-color: @ac; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 0px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px 8px 8px -15px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 2px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,123 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 300px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px 0px 0px 5px; | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| } | |||
| textbox-prompt-colon { | |||
| padding: 0px 0px 0px 2px; | |||
| background-color: @al; | |||
| text-color: @ac; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| placeholder-color: @fg; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px 0px 0px 5px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, entry ]; | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| expand: false; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 0px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 8px 8px 8px -15px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @se; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 2px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,20 @@ | |||
| #!/usr/bin/env bash | |||
| SDIR="$HOME/.config/polybar/cuts/scripts" | |||
| # Launch Rofi | |||
| MENU="$(rofi -no-config -no-lazy-grab -sep "|" -dmenu -i -p '' \ | |||
| -theme $SDIR/rofi/styles.rasi \ | |||
| <<< " Black| Adapta| Dark| Red| Green| Teal| Gruvbox| Nord| Solarized| Cherry|")" | |||
| case "$MENU" in | |||
| *Black) "$SDIR"/styles.sh --mode1 ;; | |||
| *Adapta) "$SDIR"/styles.sh --mode2 ;; | |||
| *Dark) "$SDIR"/styles.sh --mode3 ;; | |||
| *Red) "$SDIR"/styles.sh --mode4 ;; | |||
| *Green) "$SDIR"/styles.sh --mode5 ;; | |||
| *Teal) "$SDIR"/styles.sh --mode6 ;; | |||
| *Gruvbox) "$SDIR"/styles.sh --mode7 ;; | |||
| *Nord) "$SDIR"/styles.sh --mode8 ;; | |||
| *Solarized) "$SDIR"/styles.sh --mode9 ;; | |||
| *Cherry) "$SDIR"/styles.sh --mode10 ;; | |||
| esac | |||
| @ -0,0 +1,89 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/cuts/colors.ini" | |||
| RFILE="$HOME/.config/polybar/cuts/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = #${BG}/g" $PFILE | |||
| sed -i -e "s/background-alt = #.*/background-alt = #8C${BG}/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = #${FG}/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = #33${FG}/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #${BG}BF; | |||
| bga: #${BG}FF; | |||
| fg: #${FG}FF; | |||
| ac: ${AC}FF; | |||
| se: ${AC}1A; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--mode1" ]]; then | |||
| BG="0a0a0a" | |||
| FG="f5f5f5" | |||
| AC="#fdd835" | |||
| change_color | |||
| elif [[ $1 = "--mode2" ]]; then | |||
| BG="263238" | |||
| FG="DFDFDF" | |||
| AC="#00BCD4" | |||
| change_color | |||
| elif [[ $1 = "--mode3" ]]; then | |||
| BG="112526" | |||
| FG="C4AAA5" | |||
| AC="#EE7313" | |||
| change_color | |||
| elif [[ $1 = "--mode4" ]]; then | |||
| BG="461320" | |||
| FG="f5f5f5" | |||
| AC="#fdd835" | |||
| change_color | |||
| elif [[ $1 = "--mode5" ]]; then | |||
| BG="092F1C" | |||
| FG="f5f5f5" | |||
| AC="#fdd835" | |||
| change_color | |||
| elif [[ $1 = "--mode6" ]]; then | |||
| BG="003C3C" | |||
| FG="CFCFCF" | |||
| AC="#00acc1" | |||
| change_color | |||
| elif [[ $1 = "--mode7" ]]; then | |||
| BG="3C3836" | |||
| FG="EBDBB2" | |||
| AC="#FB4934" | |||
| change_color | |||
| elif [[ $1 = "--mode8" ]]; then | |||
| BG="2E3440" | |||
| FG="D8DEE9" | |||
| AC="#BF616A" | |||
| change_color | |||
| elif [[ $1 = "--mode9" ]]; then | |||
| BG="002b36" | |||
| FG="839496" | |||
| AC="#b58900" | |||
| change_color | |||
| elif [[ $1 = "--mode10" ]]; then | |||
| BG="1F1626" | |||
| FG="FFFFFF" | |||
| AC="#FFD16F" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --mode1 --mode2 --mode3 --mode4 --mode5 | |||
| --mode6 --mode7 --mode8 --mode9 --mode10 | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,45 @@ | |||
| #!/usr/bin/env bash | |||
| NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg | |||
| get_total_updates() { UPDATES=$(checkupdates 2>/dev/null | wc -l); } | |||
| while true; do | |||
| get_total_updates | |||
| # notify user of updates | |||
| if hash notify-send &>/dev/null; then | |||
| if (( UPDATES > 50 )); then | |||
| notify-send -u critical -i $NOTIFY_ICON \ | |||
| "You really need to update!!" "$UPDATES New packages" | |||
| elif (( UPDATES > 25 )); then | |||
| notify-send -u normal -i $NOTIFY_ICON \ | |||
| "You should update soon" "$UPDATES New packages" | |||
| elif (( UPDATES > 2 )); then | |||
| notify-send -u low -i $NOTIFY_ICON \ | |||
| "$UPDATES New packages" | |||
| fi | |||
| fi | |||
| # when there are updates available | |||
| # every 10 seconds another check for updates is done | |||
| while (( UPDATES > 0 )); do | |||
| if (( UPDATES == 1 )); then | |||
| echo " $UPDATES" | |||
| elif (( UPDATES > 1 )); then | |||
| echo " $UPDATES" | |||
| else | |||
| echo " None" | |||
| fi | |||
| sleep 10 | |||
| get_total_updates | |||
| done | |||
| # when no updates are available, use a longer loop, this saves on CPU | |||
| # and network uptime, only checking once every 30 min for new updates | |||
| while (( UPDATES == 0 )); do | |||
| echo " None" | |||
| sleep 1800 | |||
| get_total_updates | |||
| done | |||
| done | |||
| @ -0,0 +1,267 @@ | |||
| ;; ┌──────────────────────────────────────────────────────────────────────────────-----┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█░█░█▀▀░█▀▀░█▀▄░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ │ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░▀▀█░█▀▀░█▀▄░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ │ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ │ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └──────────────────────────────────────────────────────────────────────────────-----┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/updates] | |||
| type = custom/script | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; Command to be executed (using "/usr/bin/env sh -c [command]") | |||
| exec = ~/.config/polybar/cuts/scripts/updates.sh | |||
| ; Conditional command that, if defined, needs to exit successfully | |||
| ; before the main exec command is invoked. | |||
| ; Default: "" | |||
| ;;exec-if = "" | |||
| ; Will the script output continous content? | |||
| ; Default: false | |||
| tail = true | |||
| ; Seconds to sleep between updates | |||
| ; Default: 2 (0 if `tail = true`) | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <output> - deprecated | |||
| ; <label> (default) | |||
| format = <label> | |||
| format-prefix = | |||
| format-background = ${color.background} | |||
| format-padding = 1 | |||
| ; Available tokens: | |||
| ; %output% | |||
| ; Default: %output% | |||
| label = %output% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c [command]" | |||
| click-left = exo-open --launch TerminalEmulator & | |||
| click-right = exo-open --launch TerminalEmulator & | |||
| ;;double-click-left = echo double left %counter% | |||
| ;;double-click-middle = echo double middle %counter% | |||
| ;;double-click-right = echo double right %counter% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c [command]" | |||
| ;;scroll-up = echo scroll up %counter% | |||
| ;;scroll-down = echo scroll down %counter% | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/launcher] | |||
| type = custom/text | |||
| content = | |||
| ; "content" has the same properties as "format-NAME" | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.primary} | |||
| content-padding = 1 | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| click-left = ~/.config/polybar/cuts/scripts/launcher.sh & | |||
| ;;click-middle = ~/.config/polybar/cuts/scripts/launcher-full | |||
| click-right = ~/.config/polybar/cuts/scripts/color-switch.sh & | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| ;;scroll-up = ~/.config/polybar/cuts/scripts/launcher.sh & | |||
| ;;scroll-down = ~/.config/polybar/cuts/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/sysmenu] | |||
| type = custom/text | |||
| content = | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.primary} | |||
| content-padding = 1 | |||
| click-left = ~/.config/polybar/cuts/scripts/powermenu.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/color-switch] | |||
| type = custom/text | |||
| content = | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.foreground} | |||
| content-padding = 1 | |||
| click-left = ~/.config/polybar/cuts/scripts/style-switch.sh & | |||
| click-right = ~/.config/polybar/cuts/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/apps] | |||
| type = custom/text | |||
| content-background = ${color.background} | |||
| content-padding = 1 | |||
| [module/term] | |||
| inherit = module/apps | |||
| content = | |||
| content-foreground = #fdd835 | |||
| click-left = termite & | |||
| click-middle = urxvt & | |||
| click-right = xfce4-terminal & | |||
| [module/files] | |||
| inherit = module/apps | |||
| content-foreground = #1e88e5 | |||
| content = | |||
| click-left = thunar & | |||
| click-right = pcmanfm & | |||
| [module/browser] | |||
| inherit = module/apps | |||
| content-foreground = #fb8c00 | |||
| content = | |||
| click-left = firefox & | |||
| click-right = chromium & | |||
| [module/settings] | |||
| inherit = module/apps | |||
| content-foreground = #00897b | |||
| content = | |||
| click-left = xfce4-settings-manager & | |||
| click-right = lxappearance & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/powermenu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = reboot | |||
| menu-0-0-exec = menu-open-1 | |||
| menu-0-1 = shutdown | |||
| menu-0-1-exec = menu-open-2 | |||
| menu-1-0 = back | |||
| menu-1-0-exec = menu-open-0 | |||
| menu-1-1 = reboot | |||
| menu-1-1-exec = systemctl reboot | |||
| menu-2-0 = shutdown | |||
| menu-2-0-exec = systemctl poweroff | |||
| menu-2-1 = back | |||
| menu-2-1-exec = menu-open-0 | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle> <menu> | |||
| format-background = ${color.background} | |||
| format-padding = 1 | |||
| label-open = | |||
| label-close = | |||
| ; Optional item separator | |||
| ; Default: none | |||
| label-separator = " | " | |||
| label-open-foreground = ${color.primary} | |||
| label-close-foreground = ${color.primary} | |||
| ;;label-separator-foreground = ${color.background} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/menu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = Menu | |||
| menu-0-0-exec = ~/.config/polybar/cuts/scripts/launcher.sh & | |||
| menu-0-1 = Files | |||
| menu-0-1-exec = thunar & | |||
| menu-0-2 = Terminal | |||
| menu-0-2-exec = termite & | |||
| menu-0-3 = Browser | |||
| menu-0-3-exec = firefox & | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle> <menu> | |||
| format-background = ${color.background} | |||
| format-padding = 1 | |||
| label-open = | |||
| label-close = | |||
| ; Optional item separator | |||
| ; Default: none | |||
| label-separator = " | " | |||
| label-open-foreground = ${color.primary} | |||
| label-close-foreground = ${color.primary} | |||
| ;;label-separator-foreground = ${color.background} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/decor-glyph] | |||
| type = custom/text | |||
| content-background = ${color.background-alt} | |||
| content-foreground = ${color.background} | |||
| [module/decor1] | |||
| inherit = module/decor-glyph | |||
| content = "%{T3}%{T-}" | |||
| [module/decor2] | |||
| inherit = module/decor-glyph | |||
| content = "%{T3}%{T-}" | |||
| [module/decor3] | |||
| inherit = module/decor-glyph | |||
| content = "%{T3}%{T-}" | |||
| [module/decor4] | |||
| inherit = module/decor-glyph | |||
| content = "%{T3}%{T-}" | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,498 @@ | |||
| ;; ┌────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▄░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▄░█▀█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀░░▀░▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar] | |||
| fill = | |||
| empty = | |||
| indicator = ⏽ | |||
| ; Nerd font : , ⏽, 樂 籠 錄 , 雷 絛 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/volume] | |||
| type = internal/alsa | |||
| ; Soundcard to be used | |||
| ; Usually in the format hw:# where # is the card number | |||
| ; You can find the different card numbers in `/proc/asound/cards` | |||
| master-soundcard = default | |||
| speaker-soundcard = default | |||
| headphone-soundcard = default | |||
| ; Name of the master, speaker and headphone mixers | |||
| ; Use the following command to list available mixer controls: | |||
| ; $ amixer scontrols | sed -nr "s/.*'([[:alnum:]]+)'.*/\1/p" | |||
| ; If master, speaker or headphone-soundcard isn't the default, | |||
| ; use `amixer -c # scontrols` instead where # is the number | |||
| ; of the master, speaker or headphone soundcard respectively | |||
| ; | |||
| ; Default: Master | |||
| master-mixer = Master | |||
| ; Optionally define speaker and headphone mixers | |||
| ; Default: none | |||
| ;;speaker-mixer = Speaker | |||
| ; Default: none | |||
| ;;headphone-mixer = Headphone | |||
| ; NOTE: This is required if headphone_mixer is defined | |||
| ; Use the following command to list available device controls | |||
| ; $ amixer controls | sed -r "/CARD/\!d; s/.*=([0-9]+).*name='([^']+)'.*/printf '%3.0f: %s\n' '\1' '\2'/e" | sort | |||
| ; You may also need to use `amixer -c # controls` as above for the mixer names | |||
| ; Default: none | |||
| ;;headphone-id = 9 | |||
| ; Use volume mapping (similar to amixer -M and alsamixer), where the increase in volume is linear to the ear | |||
| ; Default: false | |||
| ;;mapped = true | |||
| ; Interval for volume increase/decrease (in percent points) | |||
| ; Default: 5 | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <label-volume> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-volume = <ramp-volume> <bar-volume> | |||
| ; Available tags: | |||
| ; <label-muted> (default) | |||
| ; <ramp-volume> | |||
| ; <bar-volume> | |||
| format-muted = <label-muted> | |||
| format-muted-prefix = | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-volume = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default | |||
| label-muted = " Muted" | |||
| label-muted-foreground = ${color.foreground-alt} | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-volume-0 = | |||
| ramp-volume-1 = | |||
| ramp-volume-2 = | |||
| ; Only applies if <bar-volume> is used | |||
| bar-volume-width = 10 | |||
| bar-volume-gradient = false | |||
| bar-volume-indicator = ${bar.indicator} | |||
| bar-volume-indicator-foreground = ${color.foreground} | |||
| bar-volume-fill = ${bar.fill} | |||
| bar-volume-foreground-0 = ${color.foreground} | |||
| bar-volume-foreground-1 = ${color.foreground} | |||
| bar-volume-foreground-2 = ${color.foreground} | |||
| bar-volume-empty = ${bar.empty} | |||
| bar-volume-empty-foreground = ${color.foreground} | |||
| ; If defined, it will replace <ramp-volume> when | |||
| ; headphones are plugged in to `headphone_control_numid` | |||
| ; If undefined, <ramp-volume> will be used for both | |||
| ; Only applies if <ramp-volume> is used | |||
| ramp-headphones-0 = | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/brightness] | |||
| ;type = internal/xbacklight | |||
| type = internal/backlight | |||
| ; Use the following command to list available cards: | |||
| ; $ ls -1 /sys/class/backlight/ | |||
| ;card = intel_backlight | |||
| card = amdgpu_bl0 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <ramp> | |||
| ; <bar> | |||
| format = <ramp> <bar> | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label = %percentage%% | |||
| ; Only applies if <ramp> is used | |||
| ramp-0 = | |||
| ramp-1 = | |||
| ramp-2 = | |||
| ramp-3 = | |||
| ramp-4 = | |||
| ; Only applies if <bar> is used | |||
| bar-width = 10 | |||
| bar-gradient = false | |||
| bar-indicator = ${bar.indicator} | |||
| bar-indicator-foreground = ${color.foreground} | |||
| bar-fill = ${bar.fill} | |||
| bar-foreground-0 = ${color.foreground} | |||
| bar-foreground-1 = ${color.foreground} | |||
| bar-foreground-2 = ${color.foreground} | |||
| bar-empty = ${bar.empty} | |||
| bar-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/battery_bar] | |||
| type = internal/battery | |||
| ; This is useful in case the battery never reports 100% charge | |||
| full-at = 99 | |||
| ; Use the following command to list batteries and adapters: | |||
| ; $ ls -1 /sys/class/power_supply/ | |||
| battery = BAT1 | |||
| adapter = ACAD | |||
| ; If an inotify event haven't been reported in this many | |||
| ; seconds, manually poll for new values. | |||
| ; | |||
| ; Needed as a fallback for systems that don't report events | |||
| ; on sysfs/procfs. | |||
| ; | |||
| ; Disable polling by setting the interval to 0. | |||
| ; | |||
| ; Default: 5 | |||
| poll-interval = 2 | |||
| ; see "man date" for details on how to format the time string | |||
| ; NOTE: if you want to use syntax tags here you need to use %%{...} | |||
| ; Default: %H:%M:%S | |||
| time-format = %H:%M | |||
| ; Available tags: | |||
| ; <label-charging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-charging> | |||
| format-charging = <bar-capacity> | |||
| format-charging-prefix = " " | |||
| ; Available tags: | |||
| ; <label-discharging> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| ; <animation-discharging> | |||
| format-discharging = <bar-capacity> | |||
| format-discharging-prefix = " " | |||
| ; Available tags: | |||
| ; <label-full> (default) | |||
| ; <bar-capacity> | |||
| ; <ramp-capacity> | |||
| format-full = <label-full> | |||
| format-full-prefix = " " | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current charge rate in watts) | |||
| label-charging = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| ; %time% | |||
| ; %consumption% (shows current discharge rate in watts) | |||
| label-discharging = %percentage%% | |||
| ; Available tokens: | |||
| ; %percentage% (default) | |||
| label-full = " Full" | |||
| ; Only applies if <bar-capacity> is used | |||
| bar-capacity-width = 10 | |||
| bar-capacity-gradient = false | |||
| bar-capacity-indicator = ${bar.indicator} | |||
| bar-capacity-indicator-foreground = ${color.foreground} | |||
| bar-capacity-fill = ${bar.fill} | |||
| bar-capacity-foreground-0 = ${color.foreground} | |||
| bar-capacity-foreground-1 = ${color.foreground} | |||
| bar-capacity-foreground-2 = ${color.foreground} | |||
| bar-capacity-empty = ${bar.empty} | |||
| bar-capacity-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/cpu_bar] | |||
| type = internal/cpu | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 0.5 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-load> | |||
| ; <ramp-load> | |||
| ; <ramp-coreload> | |||
| ;;format = <label> <ramp-coreload> | |||
| format = <bar-load> <label> | |||
| format-prefix = " " | |||
| ; Available tokens: | |||
| ; %percentage% (default) - total cpu load averaged over all cores | |||
| ; %percentage-sum% - Cumulative load on all cores | |||
| ; %percentage-cores% - load percentage for each core | |||
| ; %percentage-core[1-9]% - load percentage for specific core | |||
| label = "%percentage%%" | |||
| ; Only applies if <bar-load> is used | |||
| bar-load-width = 10 | |||
| bar-load-gradient = false | |||
| bar-load-indicator = ${bar.indicator} | |||
| bar-load-indicator-foreground = ${color.foreground} | |||
| bar-load-fill = ${bar.fill} | |||
| bar-load-foreground-0 = ${color.foreground} | |||
| bar-load-foreground-1 = ${color.foreground} | |||
| bar-load-foreground-2 = ${color.foreground} | |||
| bar-load-empty = ${bar.empty} | |||
| bar-load-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/filesystem_bar] | |||
| type = internal/fs | |||
| ; Mountpoints to display | |||
| mount-0 = / | |||
| ;;mount-1 = /home | |||
| ;;mount-2 = /var | |||
| ; Seconds to sleep between updates | |||
| ; Default: 30 | |||
| interval = 30 | |||
| ; Display fixed precision values | |||
| ; Default: false | |||
| fixed-values = false | |||
| ; Spacing between entries | |||
| ; Default: 2 | |||
| ;;spacing = 4 | |||
| ; Available tags: | |||
| ; <label-mounted> (default) | |||
| ; <bar-free> | |||
| ; <bar-used> | |||
| ; <ramp-capacity> | |||
| format-mounted = <bar-used> <label-mounted> | |||
| format-mounted-prefix = " " | |||
| ; Available tags: | |||
| ; <label-unmounted> (default) | |||
| format-unmounted = <label-unmounted> | |||
| format-unmounted-prefix = " " | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; %type% | |||
| ; %fsname% | |||
| ; %percentage_free% | |||
| ; %percentage_used% | |||
| ; %total% | |||
| ; %free% | |||
| ; %used% | |||
| ; Default: %mountpoint% %percentage_free%% | |||
| label-mounted = %used%/%total% | |||
| ; Available tokens: | |||
| ; %mountpoint% | |||
| ; Default: %mountpoint% is not mounted | |||
| label-unmounted = "%mountpoint%: not mounted" | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-width = 10 | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.foreground} | |||
| bar-used-foreground-1 = ${color.foreground} | |||
| bar-used-foreground-2 = ${color.foreground} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/memory_bar] | |||
| type = internal/memory | |||
| ; Seconds to sleep between updates | |||
| ; Default: 1 | |||
| interval = 2 | |||
| ; Available tags: | |||
| ; <label> (default) | |||
| ; <bar-used> | |||
| ; <bar-free> | |||
| ; <ramp-used> | |||
| ; <ramp-free> | |||
| ; <bar-swap-used> | |||
| ; <bar-swap-free> | |||
| ; <ramp-swap-used> | |||
| ; <ramp-swap-free> | |||
| format = <bar-used> <label> | |||
| format-prefix = " " | |||
| ; Available tokens: | |||
| ; %percentage_used% (default) | |||
| ; %percentage_free% | |||
| ; %gb_used% | |||
| ; %gb_free% | |||
| ; %gb_total% | |||
| ; %mb_used% | |||
| ; %mb_free% | |||
| ; %mb_total% | |||
| ; %percentage_swap_used% | |||
| ; %percentage_swap_free% | |||
| ; %mb_swap_total% | |||
| ; %mb_swap_free% | |||
| ; %mb_swap_used% | |||
| ; %gb_swap_total% | |||
| ; %gb_swap_free% | |||
| ; %gb_swap_used% | |||
| label = "%mb_used%" | |||
| ; Only applies if <bar-used> is used | |||
| bar-used-width = 10 | |||
| bar-used-gradient = false | |||
| bar-used-indicator = ${bar.indicator} | |||
| bar-used-indicator-foreground = ${color.foreground} | |||
| bar-used-fill = ${bar.fill} | |||
| bar-used-foreground-0 = ${color.foreground} | |||
| bar-used-foreground-1 = ${color.foreground} | |||
| bar-used-foreground-2 = ${color.foreground} | |||
| bar-used-empty = ${bar.empty} | |||
| bar-used-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/mpd_bar] | |||
| type = internal/mpd | |||
| ; Host where mpd is running (either ip or domain name) | |||
| ; Can also be the full path to a unix socket where mpd is running. | |||
| ;;host = 127.0.0.1 | |||
| ;;port = 6600 | |||
| ;;password = mysecretpassword | |||
| ; Seconds to sleep between progressbar/song timer sync | |||
| ; Default: 1 | |||
| interval = 1 | |||
| ; Available tags: | |||
| ; <label-song> (default) | |||
| ; <label-time> | |||
| ; <bar-progress> | |||
| ; <toggle> - gets replaced with <icon-(pause|play)> | |||
| ; <toggle-stop> - gets replaced with <icon-(stop|play)> | |||
| ; <icon-random> | |||
| ; <icon-repeat> | |||
| ; <icon-repeatone> (deprecated) | |||
| ; <icon-single> - Toggle playing only a single song. Replaces <icon-repeatone> | |||
| ; <icon-consume> | |||
| ; <icon-prev> | |||
| ; <icon-stop> | |||
| ; <icon-play> | |||
| ; <icon-pause> | |||
| ; <icon-next> | |||
| ; <icon-seekb> | |||
| ; <icon-seekf> | |||
| format-online = <label-song> <bar-progress> <label-time> | |||
| format-online-prefix = | |||
| ;format-playing = ${self.format-online} | |||
| ;format-paused = ${self.format-online} | |||
| ;format-stopped = ${self.format-online} | |||
| ; Available tags: | |||
| ; <label-offline> | |||
| format-offline = <label-offline> | |||
| format-offline-prefix = | |||
| ; Available tokens: | |||
| ; %artist% | |||
| ; %album-artist% | |||
| ; %album% | |||
| ; %date% | |||
| ; %title% | |||
| ; Default: %artist% - %title% | |||
| label-song = " %artist% - %title%" | |||
| label-song-maxlen = 25 | |||
| label-song-ellipsis = true | |||
| ; Available tokens: | |||
| ; %elapsed% | |||
| ; %total% | |||
| ; Default: %elapsed% / %total% | |||
| label-time = %elapsed% / %total% | |||
| ; Available tokens: | |||
| ; None | |||
| label-offline = " Offline" | |||
| ; Only applies if <icon-X> is used | |||
| icon-play = | |||
| icon-pause = | |||
| icon-stop = | |||
| icon-next = | |||
| icon-prev = | |||
| icon-seekf = | |||
| icon-seekb = | |||
| icon-random = | |||
| icon-repeat = | |||
| icon-repeatone = | |||
| icon-single = | |||
| icon-consume = | |||
| ; Used to display the state of random/repeat/repeatone/single | |||
| ; Only applies if <icon-[random|repeat|repeatone|single]> is used | |||
| toggle-on-foreground = ${color.primary} | |||
| toggle-off-foreground = ${color.secondary} | |||
| ; Only applies if <bar-progress> is used | |||
| bar-progress-width = 10 | |||
| bar-progress-gradient = false | |||
| bar-progress-indicator = ${bar.indicator} | |||
| bar-progress-indicator-foreground = ${color.foreground} | |||
| bar-progress-fill = ${bar.fill} | |||
| bar-progress-foreground-0 = ${color.foreground} | |||
| bar-progress-foreground-1 = ${color.foreground} | |||
| bar-progress-foreground-2 = ${color.foreground} | |||
| bar-progress-empty = ${bar.empty} | |||
| bar-progress-empty-foreground = ${color.foreground} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,23 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█░░░█▀█░█▀▄░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░░░█░█░█▀▄░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [color] | |||
| ;; Use pywal.sh in scripts directory to use colors from an image/wallpaper. | |||
| ;; main colors | |||
| background = #1F1F1F | |||
| foreground = #FFFFFF | |||
| foreground-alt = #8F8F8F | |||
| module-fg = #FFFFFF | |||
| primary = #e53935 | |||
| secondary = #E53935 | |||
| alternate = #7cb342 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,293 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/docky/bars.ini | |||
| include-file = ~/.config/polybar/docky/colors.ini | |||
| include-file = ~/.config/polybar/docky/modules.ini | |||
| include-file = ~/.config/polybar/docky/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = true | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 98% | |||
| height = 40 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 1% | |||
| offset-y = 2%:-2 | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.background} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| line-size = 2 | |||
| line-color = ${color.primary} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| border-bottom-size = 2 | |||
| border-bottom-color = ${color.primary} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 2 | |||
| module-margin-right = 2 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| font-0 = "Iosevka Nerd Font:size=10;3" | |||
| font-1 = "feather:size=12;3" | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| modules-left = launcher workspaces | |||
| modules-center = mpd | |||
| modules-right = updates color-switch alsa backlight battery network date sysmenu | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| # Add this script to your wm startup file. | |||
| DIR="$HOME/.config/polybar/docky" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the bar | |||
| polybar -q main -c "$DIR"/config.ini & | |||
| @ -0,0 +1,319 @@ | |||
| ;; ┌────────────────────────────────────────────────────────────────────┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀█░█▀▄░█▀▀░█░█░▀█▀░█▀▀░█░█░█▀▀│ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▀░█▀▄░█▀▀░▀▄▀░░█░░█▀▀░█▄█░▀▀█│ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░░░▀░▀░▀▀▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀│ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └────────────────────────────────────────────────────────────────────┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Global WM Settings | |||
| [global/wm] | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL top value | |||
| ; Used for top aligned bars | |||
| margin-bottom = 0 | |||
| ; Adjust the _NET_WM_STRUT_PARTIAL bottom value | |||
| ; Used for bottom aligned bars | |||
| margin-top = 0 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; File Inclusion | |||
| ; include an external file, like module file, etc. | |||
| include-file = ~/.config/polybar/docky/bars.ini | |||
| include-file = ~/.config/polybar/docky/colors.ini | |||
| include-file = ~/.config/polybar/docky/modules.ini | |||
| include-file = ~/.config/polybar/docky/user_modules.ini | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Bar Settings | |||
| [bar/main] | |||
| ; Use either of the following command to list available outputs: | |||
| ; If unspecified, the application will pick the first one it finds. | |||
| ; $ polybar -m | cut -d ':' -f 1 | |||
| ; $ xrandr -q | grep " connected" | cut -d ' ' -f1 | |||
| monitor = | |||
| ; Use the specified monitor as a fallback if the main one is not found. | |||
| monitor-fallback = | |||
| ; Require the monitor to be in connected state | |||
| ; XRandR sometimes reports my monitor as being disconnected (when in use) | |||
| monitor-strict = false | |||
| ; Tell the Window Manager not to configure the window. | |||
| ; Use this to detach the bar if your WM is locking its size/position. | |||
| override-redirect = false | |||
| ; Put the bar at the bottom of the screen | |||
| bottom = true | |||
| ; Prefer fixed center position for the `modules-center` block | |||
| ; When false, the center position will be based on the size of the other blocks. | |||
| fixed-center = true | |||
| ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%), | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in a width or height of 50% minus 10 pixels | |||
| width = 98% | |||
| height = 40 | |||
| ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| ; the percentage can optionally be extended with a pixel offset like so: | |||
| ; 50%:-10, this will result in an offset in the x or y direction | |||
| ; of 50% minus 10 pixels | |||
| offset-x = 1% | |||
| offset-y = 2%:-2 | |||
| ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| background = ${color.background} | |||
| ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| foreground = ${color.foreground} | |||
| ; Background gradient (vertical steps) | |||
| ; background-[0-9]+ = #aarrggbb | |||
| ;;background-0 = | |||
| ; Value used for drawing rounded corners | |||
| ; Note: This shouldn't be used together with border-size because the border | |||
| ; doesn't get rounded | |||
| ; Individual top/bottom values can be defined using: | |||
| ; radius-{top,bottom} | |||
| radius-top = 0.0 | |||
| radius-bottom = 0.0 | |||
| ; Under-/overline pixel size and argb color | |||
| ; Individual values can be defined using: | |||
| ; {overline,underline}-size | |||
| ; {overline,underline}-color | |||
| line-size = 2 | |||
| line-color = ${color.primary} | |||
| ; Values applied to all borders | |||
| ; Individual side values can be defined using: | |||
| ; border-{left,top,right,bottom}-size | |||
| ; border-{left,top,right,bottom}-color | |||
| ; The top and bottom borders are added to the bar height, so the effective | |||
| ; window height is: | |||
| ; height + border-top-size + border-bottom-size | |||
| ; Meanwhile the effective window width is defined entirely by the width key and | |||
| ; the border is placed withing this area. So you effectively only have the | |||
| ; following horizontal space on the bar: | |||
| ; width - border-right-size - border-left-size | |||
| ;border-bottom-size = 2 | |||
| ;border-bottom-color = ${color.primary} | |||
| ; Number of spaces to add at the beginning/end of the bar | |||
| ; Individual side values can be defined using: | |||
| ; padding-{left,right} | |||
| padding = 0 | |||
| ; Number of spaces to add before/after each module | |||
| ; Individual side values can be defined using: | |||
| ; module-margin-{left,right} | |||
| module-margin-left = 2 | |||
| module-margin-right = 2 | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; Fonts are defined using <font-name>;<vertical-offset> | |||
| ; Font names are specified using a fontconfig pattern. | |||
| ; font-0 = NotoSans-Regular:size=8;2 | |||
| ; font-1 = MaterialIcons:size=10 | |||
| ; font-2 = Termsynu:size=8;-1 | |||
| ; font-3 = FontAwesome:size=10 | |||
| ; See the Fonts wiki page for more details | |||
| font-0 = "Iosevka Nerd Font:size=10;3" | |||
| font-1 = "feather:size=12;3" | |||
| ; Modules are added to one of the available blocks | |||
| ; modules-left = cpu ram | |||
| ; modules-center = xwindow xbacklight | |||
| ; modules-right = ipc clock | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [bar/top] | |||
| inherit = bar/main | |||
| bottom = true | |||
| border-top-size = 2 | |||
| border-top-color = ${color.primary} | |||
| offset-y = 139 | |||
| modules-left = menu term files browser settings filesystem temperature | |||
| modules-center = title | |||
| modules-right = color-switch keyboard pulseaudio backlight updates powermenu | |||
| enable-ipc = true | |||
| [bar/mid] | |||
| inherit = bar/main | |||
| bottom = true | |||
| offset-y = 80 | |||
| modules-center = volume brightness battery_bar cpu_bar filesystem_bar memory_bar mpd_bar | |||
| enable-ipc = true | |||
| [bar/bottom] | |||
| inherit = bar/main | |||
| bottom = true | |||
| border-bottom-size = 2 | |||
| border-bottom-color = ${color.primary} | |||
| modules-left = launcher workspaces cpu memory | |||
| modules-center = mpd | |||
| modules-right = alsa battery network date sysmenu | |||
| enable-ipc = true | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ; The separator will be inserted between the output of each module | |||
| separator = | |||
| ; Opacity value between 0.0 and 1.0 used on fade in/out | |||
| dim-value = 1.0 | |||
| ; Value to be used to set the WM_NAME atom | |||
| ; If the value is empty or undefined, the atom value | |||
| ; will be created from the following template: polybar-[BAR]_[MONITOR] | |||
| ; NOTE: The placeholders are not available for custom values | |||
| wm-name = | |||
| ; Locale used to localize various module data (e.g. date) | |||
| ; Expects a valid libc locale, for example: sv_SE.UTF-8 | |||
| locale = | |||
| ; Position of the system tray window | |||
| ; If empty or undefined, tray support will be disabled | |||
| ; NOTE: A center aligned tray will cover center aligned modules | |||
| ; | |||
| ; Available positions: | |||
| ; left | |||
| ; center | |||
| ; right | |||
| ; none | |||
| tray-position = none | |||
| ; If true, the bar will not shift its | |||
| ; contents when the tray changes | |||
| tray-detached = false | |||
| ; Tray icon max size | |||
| tray-maxsize = 16 | |||
| ; Background color for the tray container | |||
| ; ARGB color (e.g. #f00, #ff992a, #ddff1023) | |||
| ; By default the tray container will use the bar | |||
| ; background color. | |||
| tray-background = ${color.background} | |||
| ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%) | |||
| tray-offset-x = 0 | |||
| tray-offset-y = 0 | |||
| ; Pad the sides of each tray icon | |||
| tray-padding = 0 | |||
| ; Scale factor for tray clients | |||
| tray-scale = 1.0 | |||
| ; Restack the bar window and put it above the | |||
| ; selected window manager's root | |||
| ; | |||
| ; Fixes the issue where the bar is being drawn | |||
| ; on top of fullscreen window's | |||
| ; | |||
| ; Currently supported WM's: | |||
| ; bspwm | |||
| ; i3 (requires: `override-redirect = true`) | |||
| ;;wm-restack = | |||
| ; Set a DPI values used when rendering text | |||
| ; This only affects scalable fonts | |||
| ; dpi = | |||
| ; Enable support for inter-process messaging | |||
| ; See the Messaging wiki page for more details. | |||
| ;enable-ipc = true | |||
| ; Fallback click handlers that will be called if | |||
| ; there's no matching module handler found. | |||
| click-left = | |||
| click-middle = | |||
| click-right = | |||
| scroll-up = | |||
| scroll-down = | |||
| double-click-left = | |||
| double-click-middle = | |||
| double-click-right = | |||
| ; Requires polybar to be built with xcursor support (xcb-util-cursor) | |||
| ; Possible values are: | |||
| ; - default : The default pointer as before, can also be an empty string (default) | |||
| ; - pointer : Typically in the form of a hand | |||
| ; - ns-resize : Up and down arrows, can be used to indicate scrolling | |||
| cursor-click = | |||
| cursor-scroll = | |||
| ;; WM Workspace Specific | |||
| ; bspwm | |||
| ;;scroll-up = bspwm-desknext | |||
| ;;scroll-down = bspwm-deskprev | |||
| ;;scroll-up = bspc desktop -f prev.local | |||
| ;;scroll-down = bspc desktop -f next.local | |||
| ;i3 | |||
| ;;scroll-up = i3wm-wsnext | |||
| ;;scroll-down = i3wm-wsprev | |||
| ;;scroll-up = i3-msg workspace next_on_output | |||
| ;;scroll-down = i3-msg workspace prev_on_output | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| ;; Application Settings | |||
| [settings] | |||
| ; The throttle settings lets the eventloop swallow up til X events | |||
| ; if they happen within Y millisecond after first event was received. | |||
| ; This is done to prevent flood of update event. | |||
| ; | |||
| ; For example if 5 modules emit an update event at the same time, we really | |||
| ; just care about the last one. But if we wait too long for events to swallow | |||
| ; the bar would appear sluggish so we continue if timeout | |||
| ; expires or limit is reached. | |||
| throttle-output = 5 | |||
| throttle-output-for = 10 | |||
| ; Time in milliseconds that the input handler will wait between processing events | |||
| ;throttle-input-for = 30 | |||
| ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events | |||
| screenchange-reload = false | |||
| ; Compositing operators | |||
| ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t | |||
| compositing-background = source | |||
| compositing-foreground = over | |||
| compositing-overline = over | |||
| compositing-underline = over | |||
| compositing-border = over | |||
| ; Define fallback values used by all module formats | |||
| ;format-foreground = | |||
| ;format-background = | |||
| ;format-underline = | |||
| ;format-overline = | |||
| ;format-spacing = | |||
| ;format-padding = | |||
| ;format-margin = | |||
| ;format-offset = | |||
| ; Enables pseudo-transparency for the bar | |||
| ; If set to true the bar can be transparent without a compositor. | |||
| pseudo-transparency = false | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| @ -0,0 +1,14 @@ | |||
| #!/usr/bin/env bash | |||
| DIR="$HOME/.config/polybar/docky" | |||
| # Terminate already running bar instances | |||
| killall -q polybar | |||
| # Wait until the processes have been shut down | |||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | |||
| # Launch the preview bar | |||
| polybar -q top -c "$DIR"/preview.ini & | |||
| polybar -q mid -c "$DIR"/preview.ini & | |||
| polybar -q bottom -c "$DIR"/preview.ini & | |||
| @ -0,0 +1,117 @@ | |||
| #!/usr/bin/bash | |||
| # | |||
| # checkupdates: Safely print a list of pending updates. | |||
| # | |||
| # Copyright (c) 2013 Kyle Keen <keenerd@gmail.com> | |||
| # | |||
| # This program is free software; you can redistribute it and/or modify | |||
| # it under the terms of the GNU General Public License as published by | |||
| # the Free Software Foundation; either version 2 of the License, or | |||
| # (at your option) any later version. | |||
| # | |||
| # This program is distributed in the hope that it will be useful, | |||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
| # GNU General Public License for more details. | |||
| # | |||
| # You should have received a copy of the GNU General Public License | |||
| # along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| # | |||
| declare -r myname='checkupdates' | |||
| declare -r myver='1.0.0' | |||
| plain() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| msg2() { | |||
| (( QUIET )) && return | |||
| local mesg=$1; shift | |||
| printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1 | |||
| } | |||
| ask() { | |||
| local mesg=$1; shift | |||
| printf "${BLUE}::${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&1 | |||
| } | |||
| warning() { | |||
| local mesg=$1; shift | |||
| printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| error() { | |||
| local mesg=$1; shift | |||
| printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 | |||
| } | |||
| # check if messages are to be printed using color | |||
| unset ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if [[ -t 2 && ! $USE_COLOR = "n" ]]; then | |||
| # prefer terminal safe colored and bold text when tput is supported | |||
| if tput setaf 0 &>/dev/null; then | |||
| ALL_OFF="$(tput sgr0)" | |||
| BOLD="$(tput bold)" | |||
| BLUE="${BOLD}$(tput setaf 4)" | |||
| GREEN="${BOLD}$(tput setaf 2)" | |||
| RED="${BOLD}$(tput setaf 1)" | |||
| YELLOW="${BOLD}$(tput setaf 3)" | |||
| else | |||
| ALL_OFF="\e[1;0m" | |||
| BOLD="\e[1;1m" | |||
| BLUE="${BOLD}\e[1;34m" | |||
| GREEN="${BOLD}\e[1;32m" | |||
| RED="${BOLD}\e[1;31m" | |||
| YELLOW="${BOLD}\e[1;33m" | |||
| fi | |||
| fi | |||
| readonly ALL_OFF BOLD BLUE GREEN RED YELLOW | |||
| if (( $# > 0 )); then | |||
| echo "${myname} v${myver}" | |||
| echo | |||
| echo "Safely print a list of pending updates" | |||
| echo | |||
| echo "Usage: ${myname}" | |||
| echo | |||
| echo 'Note: Export the "CHECKUPDATES_DB" variable to change the path of the temporary database.' | |||
| exit 0 | |||
| fi | |||
| if ! type -P fakeroot >/dev/null; then | |||
| error 'Cannot find the fakeroot binary.' | |||
| exit 1 | |||
| fi | |||
| if [[ -z $CHECKUPDATES_DB ]]; then | |||
| CHECKUPDATES_DB="${TMPDIR:-/tmp}/checkup-db-${USER}/" | |||
| fi | |||
| trap 'rm -f $CHECKUPDATES_DB/db.lck' INT TERM EXIT | |||
| DBPath="$(pacman-conf DBPath)" | |||
| if [[ -z "$DBPath" ]] || [[ ! -d "$DBPath" ]]; then | |||
| DBPath="/var/lib/pacman/" | |||
| fi | |||
| mkdir -p "$CHECKUPDATES_DB" | |||
| ln -s "${DBPath}/local" "$CHECKUPDATES_DB" &> /dev/null | |||
| if ! fakeroot -- pacman -Sy --dbpath "$CHECKUPDATES_DB" --logfile /dev/null &> /dev/null; then | |||
| error 'Cannot fetch updates' | |||
| exit 1 | |||
| fi | |||
| pacman -Qu --dbpath "$CHECKUPDATES_DB" 2> /dev/null | grep -v '\[.*\]' | |||
| exit 0 | |||
| # vim: set noet: | |||
| @ -0,0 +1,55 @@ | |||
| #!/usr/bin/env bash | |||
| SDIR="$HOME/.config/polybar/docky/scripts" | |||
| # Launch Rofi | |||
| MENU="$(rofi -no-config -no-lazy-grab -sep "|" -dmenu -i -p '' \ | |||
| -theme $SDIR/rofi/styles.rasi \ | |||
| <<< " amber| blue| blue-gray| brown| cyan| deep-orange|\ | |||
| deep-purple| green| gray| indigo| blue-light| green-light|\ | |||
| lime| orange| pink| purple| red| teal| yellow| amber-dark|\ | |||
| blue-dark| blue-gray-dark| brown-dark| cyan-dark| deep-orange-dark|\ | |||
| deep-purple-dark| green-dark| gray-dark| indigo-dark| blue-light-dark|\ | |||
| green-light-dark| lime-dark| orange-dark| pink-dark| purple-dark| red-dark| teal-dark| yellow-dark|")" | |||
| case "$MENU" in | |||
| ## Light Colors | |||
| *amber) "$SDIR"/colors-light.sh --amber ;; | |||
| *blue) "$SDIR"/colors-light.sh --blue ;; | |||
| *blue-gray) "$SDIR"/colors-light.sh --blue-gray ;; | |||
| *brown) "$SDIR"/colors-light.sh --brown ;; | |||
| *cyan) "$SDIR"/colors-light.sh --cyan ;; | |||
| *deep-orange) "$SDIR"/colors-light.sh --deep-orange ;; | |||
| *deep-purple) "$SDIR"/colors-light.sh --deep-purple ;; | |||
| *green) "$SDIR"/colors-light.sh --green ;; | |||
| *gray) "$SDIR"/colors-light.sh --gray ;; | |||
| *indigo) "$SDIR"/colors-light.sh --indigo ;; | |||
| *blue-light) "$SDIR"/colors-light.sh --light-blue ;; | |||
| *green-light) "$SDIR"/colors-light.sh --light-green ;; | |||
| *lime) "$SDIR"/colors-light.sh --lime ;; | |||
| *orange) "$SDIR"/colors-light.sh --orange ;; | |||
| *pink) "$SDIR"/colors-light.sh --pink ;; | |||
| *purple) "$SDIR"/colors-light.sh --purple ;; | |||
| *red) "$SDIR"/colors-light.sh --red ;; | |||
| *teal) "$SDIR"/colors-light.sh --teal ;; | |||
| *yellow) "$SDIR"/colors-light.sh --yellow ;; | |||
| ## Dark Colors | |||
| *amber-dark) "$SDIR"/colors-dark.sh --amber ;; | |||
| *blue-dark) "$SDIR"/colors-dark.sh --blue ;; | |||
| *blue-gray-dark) "$SDIR"/colors-dark.sh --blue-gray ;; | |||
| *brown-dark) "$SDIR"/colors-dark.sh --brown ;; | |||
| *cyan-dark) "$SDIR"/colors-dark.sh --cyan ;; | |||
| *deep-orange-dark) "$SDIR"/colors-dark.sh --deep-orange ;; | |||
| *deep-purple-dark) "$SDIR"/colors-dark.sh --deep-purple ;; | |||
| *green-dark) "$SDIR"/colors-dark.sh --green ;; | |||
| *gray-dark) "$SDIR"/colors-dark.sh --gray ;; | |||
| *indigo-dark) "$SDIR"/colors-dark.sh --indigo ;; | |||
| *blue-light-dark) "$SDIR"/colors-dark.sh --light-blue ;; | |||
| *green-light-dark) "$SDIR"/colors-dark.sh --light-green ;; | |||
| *lime-dark) "$SDIR"/colors-dark.sh --lime ;; | |||
| *orange-dark) "$SDIR"/colors-dark.sh --orange ;; | |||
| *pink-dark) "$SDIR"/colors-dark.sh --pink ;; | |||
| *purple-dark) "$SDIR"/colors-dark.sh --purple ;; | |||
| *red-dark) "$SDIR"/colors-dark.sh --red ;; | |||
| *teal-dark) "$SDIR"/colors-dark.sh --teal ;; | |||
| *yellow-dark) "$SDIR"/colors-dark.sh --yellow | |||
| esac | |||
| @ -0,0 +1,120 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/docky/colors.ini" | |||
| RFILE="$HOME/.config/polybar/docky/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e 's/background = #.*/background = #1F1F1F/g' $PFILE | |||
| sed -i -e 's/foreground = #.*/foreground = #FFFFFF/g' $PFILE | |||
| sed -i -e 's/foreground-alt = #.*/foreground-alt = #8F8F8F/g' $PFILE | |||
| sed -i -e "s/module-fg = #.*/module-fg = $MF/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| sed -i -e 's/secondary = #.*/secondary = #E53935/g' $PFILE | |||
| sed -i -e 's/alternate = #.*/alternate = #7cb342/g' $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #1F1F1FFF; | |||
| bga: ${AC}33; | |||
| bar: ${MF}FF; | |||
| fg: #FFFFFFFF; | |||
| ac: ${AC}FF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--amber" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#ffb300" | |||
| change_color | |||
| elif [[ $1 = "--blue" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#1e88e5" | |||
| change_color | |||
| elif [[ $1 = "--blue-gray" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#546e7a" | |||
| change_color | |||
| elif [[ $1 = "--brown" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#6d4c41" | |||
| change_color | |||
| elif [[ $1 = "--cyan" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#00acc1" | |||
| change_color | |||
| elif [[ $1 = "--deep-orange" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#f4511e" | |||
| change_color | |||
| elif [[ $1 = "--deep-purple" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#5e35b1" | |||
| change_color | |||
| elif [[ $1 = "--green" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#43a047" | |||
| change_color | |||
| elif [[ $1 = "--gray" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#757575" | |||
| change_color | |||
| elif [[ $1 = "--indigo" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#3949ab" | |||
| change_color | |||
| elif [[ $1 = "--light-blue" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#039be5" | |||
| change_color | |||
| elif [[ $1 = "--light-green" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#7cb342" | |||
| change_color | |||
| elif [[ $1 = "--lime" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#c0ca33" | |||
| change_color | |||
| elif [[ $1 = "--orange" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#fb8c00" | |||
| change_color | |||
| elif [[ $1 = "--pink" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#d81b60" | |||
| change_color | |||
| elif [[ $1 = "--purple" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#8e24aa" | |||
| change_color | |||
| elif [[ $1 = "--red" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#e53935" | |||
| change_color | |||
| elif [[ $1 = "--teal" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#00897b" | |||
| change_color | |||
| elif [[ $1 = "--yellow" ]]; then | |||
| MF="#1F1F1F" | |||
| AC="#fdd835" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --amber --blue --blue-gray --brown | |||
| --cyan --deep-orange --deep-purple --green | |||
| --gray --indigo --light-blue --light-green | |||
| --lime --orange --pink --purple | |||
| --red --teal --yellow | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,120 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/docky/colors.ini" | |||
| RFILE="$HOME/.config/polybar/docky/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e 's/background = #.*/background = #FFFFFF/g' $PFILE | |||
| sed -i -e 's/foreground = #.*/foreground = #2E2E2E/g' $PFILE | |||
| sed -i -e 's/foreground-alt = #.*/foreground-alt = #656565/g' $PFILE | |||
| sed -i -e "s/module-fg = #.*/module-fg = $MF/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| sed -i -e 's/secondary = #.*/secondary = #E53935/g' $PFILE | |||
| sed -i -e 's/alternate = #.*/alternate = #7cb342/g' $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #FFFFFFFF; | |||
| bga: ${AC}33; | |||
| bar: ${MF}FF; | |||
| fg: #2E2E2EFF; | |||
| ac: ${AC}FF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| if [[ $1 = "--amber" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#ffb300" | |||
| change_color | |||
| elif [[ $1 = "--blue" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#1e88e5" | |||
| change_color | |||
| elif [[ $1 = "--blue-gray" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#546e7a" | |||
| change_color | |||
| elif [[ $1 = "--brown" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#6d4c41" | |||
| change_color | |||
| elif [[ $1 = "--cyan" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#00acc1" | |||
| change_color | |||
| elif [[ $1 = "--deep-orange" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#f4511e" | |||
| change_color | |||
| elif [[ $1 = "--deep-purple" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#5e35b1" | |||
| change_color | |||
| elif [[ $1 = "--green" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#43a047" | |||
| change_color | |||
| elif [[ $1 = "--gray" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#757575" | |||
| change_color | |||
| elif [[ $1 = "--indigo" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#3949ab" | |||
| change_color | |||
| elif [[ $1 = "--light-blue" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#039be5" | |||
| change_color | |||
| elif [[ $1 = "--light-green" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#7cb342" | |||
| change_color | |||
| elif [[ $1 = "--lime" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#c0ca33" | |||
| change_color | |||
| elif [[ $1 = "--orange" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#fb8c00" | |||
| change_color | |||
| elif [[ $1 = "--pink" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#d81b60" | |||
| change_color | |||
| elif [[ $1 = "--purple" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#8e24aa" | |||
| change_color | |||
| elif [[ $1 = "--red" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#e53935" | |||
| change_color | |||
| elif [[ $1 = "--teal" ]]; then | |||
| MF="#FFFFFF" | |||
| AC="#00897b" | |||
| change_color | |||
| elif [[ $1 = "--yellow" ]]; then | |||
| MF="#2E2E2E" | |||
| AC="#fdd835" | |||
| change_color | |||
| else | |||
| cat <<- _EOF_ | |||
| No option specified, Available options: | |||
| --amber --blue --blue-gray --brown | |||
| --cyan --deep-orange --deep-purple --green | |||
| --gray --indigo --light-blue --light-green | |||
| --lime --orange --pink --purple | |||
| --red --teal --yellow | |||
| _EOF_ | |||
| fi | |||
| @ -0,0 +1,3 @@ | |||
| #!/usr/bin/env bash | |||
| rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/polybar/docky/scripts/rofi/launcher.rasi | |||
| @ -0,0 +1,94 @@ | |||
| #!/usr/bin/env bash | |||
| ## Author : Aditya Shakya | |||
| ## Mail : adi1090x@gmail.com | |||
| ## Github : @adi1090x | |||
| ## Twitter : @adi1090x | |||
| dir="~/.config/polybar/docky/scripts/rofi" | |||
| uptime=$(uptime -p | sed -e 's/up //g') | |||
| rofi_command="rofi -theme $dir/powermenu.rasi" | |||
| # Options | |||
| shutdown=" Shutdown" | |||
| reboot=" Restart" | |||
| lock=" Lock" | |||
| suspend=" Sleep" | |||
| logout=" Logout" | |||
| # Confirmation | |||
| confirm_exit() { | |||
| rofi -dmenu\ | |||
| -i\ | |||
| -no-fixed-num-lines\ | |||
| -p "Are You Sure? : "\ | |||
| -theme $dir/confirm.rasi | |||
| } | |||
| # Message | |||
| msg() { | |||
| rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n" | |||
| } | |||
| # Variable passed to rofi | |||
| options="$lock\n$suspend\n$logout\n$reboot\n$shutdown" | |||
| chosen="$(echo -e "$options" | $rofi_command -p "Uptime: $uptime" -dmenu -selected-row 0)" | |||
| case $chosen in | |||
| $shutdown) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl poweroff | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $reboot) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| systemctl reboot | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $lock) | |||
| if [[ -f /usr/bin/i3lock ]]; then | |||
| i3lock | |||
| elif [[ -f /usr/bin/betterlockscreen ]]; then | |||
| betterlockscreen -l | |||
| fi | |||
| ;; | |||
| $suspend) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| mpc -q pause | |||
| amixer set Master mute | |||
| systemctl suspend | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| $logout) | |||
| ans=$(confirm_exit &) | |||
| if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then | |||
| if [[ "$DESKTOP_SESSION" == "Openbox" ]]; then | |||
| openbox --exit | |||
| elif [[ "$DESKTOP_SESSION" == "bspwm" ]]; then | |||
| bspc quit | |||
| elif [[ "$DESKTOP_SESSION" == "i3" ]]; then | |||
| i3-msg exit | |||
| fi | |||
| elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then | |||
| exit 0 | |||
| else | |||
| msg | |||
| fi | |||
| ;; | |||
| esac | |||
| @ -0,0 +1,81 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/docky/colors.ini" | |||
| RFILE="$HOME/.config/polybar/docky/scripts/rofi/colors.rasi" | |||
| # Get colors | |||
| pywal_get() { | |||
| wal -i "$1" -q -t | |||
| } | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = $BG/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = $FGA/g" $PFILE | |||
| sed -i -e "s/module-fg = #.*/module-fg = $MF/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| sed -i -e "s/secondary = #.*/secondary = $SC/g" $PFILE | |||
| sed -i -e "s/alternate = #.*/alternate = $AL/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: ${BG}FF; | |||
| bga: ${AC}33; | |||
| bar: ${MF}FF; | |||
| fg: ${FG}FF; | |||
| ac: ${AC}FF; | |||
| } | |||
| EOF | |||
| } | |||
| hex_to_rgb() { | |||
| # Convert a hex value WITHOUT the hashtag (#) | |||
| R=$(printf "%d" 0x${1:0:2}) | |||
| G=$(printf "%d" 0x${1:2:2}) | |||
| B=$(printf "%d" 0x${1:4:2}) | |||
| } | |||
| get_fg_color(){ | |||
| INTENSITY=$(calc "$R*0.299 + $G*0.587 + $B*0.114") | |||
| if [ $(echo "$INTENSITY>186" | bc) -eq 1 ]; then | |||
| MF="#202020" | |||
| else | |||
| MF="#F5F5F5" | |||
| fi | |||
| } | |||
| # Main | |||
| if [[ -f "/usr/bin/wal" ]]; then | |||
| if [[ "$1" ]]; then | |||
| pywal_get "$1" | |||
| # Source the pywal color file | |||
| . "$HOME/.cache/wal/colors.sh" | |||
| BG=`printf "%s\n" "$background"` | |||
| FG=`printf "%s\n" "$foreground"` | |||
| FGA=`printf "%s\n" "$color8"` | |||
| AC=`printf "%s\n" "$color1"` | |||
| SC=`printf "%s\n" "$color2"` | |||
| AL=`printf "%s\n" "$color3"` | |||
| HEX=${AC:1} | |||
| hex_to_rgb $HEX | |||
| get_fg_color | |||
| change_color | |||
| else | |||
| echo -e "[!] Please enter the path to wallpaper. \n" | |||
| echo "Usage : ./pywal.sh path/to/image" | |||
| fi | |||
| else | |||
| echo "[!] 'pywal' is not installed." | |||
| fi | |||
| @ -0,0 +1,96 @@ | |||
| #!/usr/bin/env bash | |||
| # Color files | |||
| PFILE="$HOME/.config/polybar/docky/colors.ini" | |||
| RFILE="$HOME/.config/polybar/docky/scripts/rofi/colors.rasi" | |||
| # Change colors | |||
| change_color() { | |||
| # polybar | |||
| sed -i -e "s/background = #.*/background = $BG/g" $PFILE | |||
| sed -i -e "s/foreground = #.*/foreground = $FG/g" $PFILE | |||
| sed -i -e "s/foreground-alt = #.*/foreground-alt = $FGA/g" $PFILE | |||
| sed -i -e "s/module-fg = #.*/module-fg = $MF/g" $PFILE | |||
| sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE | |||
| sed -i -e "s/secondary = #.*/secondary = $SC/g" $PFILE | |||
| sed -i -e "s/alternate = #.*/alternate = $AL/g" $PFILE | |||
| # rofi | |||
| cat > $RFILE <<- EOF | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: ${BG}FF; | |||
| bga: ${AC}33; | |||
| bar: ${MF}FF; | |||
| fg: ${FG}FF; | |||
| ac: ${AC}FF; | |||
| } | |||
| EOF | |||
| polybar-msg cmd restart | |||
| } | |||
| get_random_number() { | |||
| RNUM=$(( ($RANDOM % $1) + 1 )) | |||
| } | |||
| get_random_color() { | |||
| RCOLOR="#" | |||
| for i in 1 2 3 4 5 6 | |||
| do | |||
| get_random_number "16" | |||
| case $RNUM in | |||
| "1") NEXTDIGIT="1";; | |||
| "2") NEXTDIGIT="2";; | |||
| "3") NEXTDIGIT="3";; | |||
| "4") NEXTDIGIT="4";; | |||
| "5") NEXTDIGIT="5";; | |||
| "6") NEXTDIGIT="6";; | |||
| "7") NEXTDIGIT="7";; | |||
| "8") NEXTDIGIT="8";; | |||
| "9") NEXTDIGIT="9";; | |||
| "10") NEXTDIGIT="A";; | |||
| "11") NEXTDIGIT="B";; | |||
| "12") NEXTDIGIT="C";; | |||
| "13") NEXTDIGIT="D";; | |||
| "14") NEXTDIGIT="E";; | |||
| "15") NEXTDIGIT="F";; | |||
| "16") NEXTDIGIT="0";; | |||
| esac | |||
| RCOLOR="$RCOLOR$NEXTDIGIT" | |||
| done | |||
| echo $RCOLOR | |||
| } | |||
| hex_to_rgb() { | |||
| # Convert a hex value WITHOUT the hashtag (#) | |||
| R=$(printf "%d" 0x${1:0:2}) | |||
| G=$(printf "%d" 0x${1:2:2}) | |||
| B=$(printf "%d" 0x${1:4:2}) | |||
| } | |||
| get_fg_color(){ | |||
| INTENSITY=$(calc "$R*0.299 + $G*0.587 + $B*0.114") | |||
| if [ $(echo "$INTENSITY>186" | bc) -eq 1 ]; then | |||
| MF="#0a0a0a" | |||
| else | |||
| MF="#F5F5F5" | |||
| fi | |||
| } | |||
| # Main | |||
| BG='#1F1F1F' # change to light bg | |||
| FG='#FFFFFF' # change to dark fg | |||
| FGA=`get_random_color` | |||
| AC=`get_random_color` | |||
| SC=`get_random_color` | |||
| AL=`get_random_color` | |||
| HEX=${AC:1} | |||
| hex_to_rgb $HEX | |||
| get_fg_color | |||
| change_color | |||
| @ -0,0 +1,10 @@ | |||
| /* colors */ | |||
| * { | |||
| al: #00000000; | |||
| bg: #1F1F1FFF; | |||
| bga: #e5393533; | |||
| bar: #FFFFFFFF; | |||
| fg: #FFFFFFFF; | |||
| ac: #e53935FF; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 225px; | |||
| padding: 25px; | |||
| border: 0px 0px 2px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @ac; | |||
| } | |||
| @ -0,0 +1,115 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 2px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 350px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px; | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| placeholder-color: @bar; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px 0px 0px 10px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ prompt, entry ]; | |||
| background-color: @ac; | |||
| text-color: @bar; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 10px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,24 @@ | |||
| /* Confirm Dialog */ | |||
| @import "colors.rasi" | |||
| * { | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| font: "Iosevka Nerd Font 10"; | |||
| } | |||
| window { | |||
| width: 320px; | |||
| padding: 25px; | |||
| border: 0px 0px 2px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| location: center; | |||
| y-offset: -2em; | |||
| } | |||
| entry { | |||
| expand: true; | |||
| text-color: @ac; | |||
| } | |||
| @ -0,0 +1,122 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 2px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 400px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px 0px 0px 5px; | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| } | |||
| textbox-prompt-colon { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| placeholder-color: @bar; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px 0px 0px 10px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @ac; | |||
| text-color: @bar; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 8; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 10px 10px 10px -17px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,122 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 2px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 350px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px 0px 0px 5px; | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| } | |||
| textbox-prompt-colon { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| placeholder-color: @bar; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px 0px 0px 10px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, prompt ]; | |||
| background-color: @ac; | |||
| text-color: @bar; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 10px 10px 10px -17px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,122 @@ | |||
| /* | |||
| * | |||
| * Author : Aditya Shakya | |||
| * Mail : adi1090x@gmail.com | |||
| * Github : @adi1090x | |||
| * Twitter : @adi1090x | |||
| * | |||
| */ | |||
| configuration { | |||
| font: "Iosevka Nerd Font 10"; | |||
| show-icons: true; | |||
| icon-theme: "Papirus"; | |||
| display-drun: ""; | |||
| drun-display-format: "{name}"; | |||
| disable-history: false; | |||
| fullscreen: false; | |||
| hide-scrollbar: true; | |||
| sidebar-mode: false; | |||
| } | |||
| @import "colors.rasi" | |||
| window { | |||
| transparency: "real"; | |||
| background-color: @bg; | |||
| text-color: @fg; | |||
| border: 0px 0px 2px 0px; | |||
| border-color: @ac; | |||
| border-radius: 0px; | |||
| width: 350px; | |||
| location: center; | |||
| x-offset: 0; | |||
| y-offset: 0; | |||
| } | |||
| prompt { | |||
| enabled: true; | |||
| padding: 0px 0px 0px 5px; | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| } | |||
| textbox-prompt-colon { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| expand: false; | |||
| str: ""; | |||
| font: "feather 12"; | |||
| } | |||
| entry { | |||
| background-color: @al; | |||
| text-color: @bar; | |||
| placeholder-color: @bar; | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| placeholder: "Search..."; | |||
| padding: 0px 0px 0px 5px; | |||
| blink: true; | |||
| } | |||
| inputbar { | |||
| children: [ textbox-prompt-colon, entry ]; | |||
| background-color: @ac; | |||
| text-color: @bar; | |||
| expand: false; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| margin: 0px; | |||
| padding: 12px; | |||
| } | |||
| listview { | |||
| background-color: @al; | |||
| padding: 0px; | |||
| columns: 1; | |||
| lines: 5; | |||
| spacing: 5px; | |||
| cycle: true; | |||
| dynamic: true; | |||
| layout: vertical; | |||
| } | |||
| mainbox { | |||
| background-color: @al; | |||
| border: 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| children: [ inputbar, listview ]; | |||
| spacing: 0px; | |||
| padding: 0px; | |||
| } | |||
| element { | |||
| background-color: @al; | |||
| text-color: @fg; | |||
| orientation: horizontal; | |||
| border-radius: 0px; | |||
| padding: 10px 10px 10px -17px; | |||
| } | |||
| element-icon { | |||
| size: 24px; | |||
| border: 0px; | |||
| } | |||
| element-text { | |||
| expand: true; | |||
| horizontal-align: 0; | |||
| vertical-align: 0.5; | |||
| margin: 0px 2.5px 0px 2.5px; | |||
| } | |||
| element selected { | |||
| background-color: @bga; | |||
| text-color: @fg; | |||
| border: 0px 0px 0px 0px; | |||
| border-radius: 0px; | |||
| border-color: @ac; | |||
| } | |||
| @ -0,0 +1,45 @@ | |||
| #!/usr/bin/env bash | |||
| NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg | |||
| get_total_updates() { UPDATES=$(checkupdates 2>/dev/null | wc -l); } | |||
| while true; do | |||
| get_total_updates | |||
| # notify user of updates | |||
| if hash notify-send &>/dev/null; then | |||
| if (( UPDATES > 50 )); then | |||
| notify-send -u critical -i $NOTIFY_ICON \ | |||
| "You really need to update!!" "$UPDATES New packages" | |||
| elif (( UPDATES > 25 )); then | |||
| notify-send -u normal -i $NOTIFY_ICON \ | |||
| "You should update soon" "$UPDATES New packages" | |||
| elif (( UPDATES > 2 )); then | |||
| notify-send -u low -i $NOTIFY_ICON \ | |||
| "$UPDATES New packages" | |||
| fi | |||
| fi | |||
| # when there are updates available | |||
| # every 10 seconds another check for updates is done | |||
| while (( UPDATES > 0 )); do | |||
| if (( UPDATES == 1 )); then | |||
| echo " $UPDATES" | |||
| elif (( UPDATES > 1 )); then | |||
| echo " $UPDATES" | |||
| else | |||
| echo " None" | |||
| fi | |||
| sleep 10 | |||
| get_total_updates | |||
| done | |||
| # when no updates are available, use a longer loop, this saves on CPU | |||
| # and network uptime, only checking once every 30 min for new updates | |||
| while (( UPDATES == 0 )); do | |||
| echo " None" | |||
| sleep 1800 | |||
| get_total_updates | |||
| done | |||
| done | |||
| @ -0,0 +1,233 @@ | |||
| ;; ┌──────────────────────────────────────────────────────────────────────────────-----┐ | |||
| ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█░█░█▀▀░█▀▀░█▀▄░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ │ | |||
| ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░▀▀█░█▀▀░█▀▄░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ │ | |||
| ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ │ | |||
| ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│ | |||
| ;; └──────────────────────────────────────────────────────────────────────────────-----┘ | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/updates] | |||
| type = custom/script | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; Command to be executed (using "/usr/bin/env sh -c [command]") | |||
| exec = ~/.config/polybar/docky/scripts/updates.sh | |||
| ; Conditional command that, if defined, needs to exit successfully | |||
| ; before the main exec command is invoked. | |||
| ; Default: "" | |||
| ;;exec-if = "" | |||
| ; Will the script output continous content? | |||
| ; Default: false | |||
| tail = true | |||
| ; Seconds to sleep between updates | |||
| ; Default: 2 (0 if `tail = true`) | |||
| interval = 5 | |||
| ; Available tags: | |||
| ; <output> - deprecated | |||
| ; <label> (default) | |||
| format = <label> | |||
| format-prefix = | |||
| ; Available tokens: | |||
| ; %output% | |||
| ; Default: %output% | |||
| label = %output% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c [command]" | |||
| click-left = exo-open --launch TerminalEmulator & | |||
| click-right = exo-open --launch TerminalEmulator & | |||
| ;;double-click-left = echo double left %counter% | |||
| ;;double-click-middle = echo double middle %counter% | |||
| ;;double-click-right = echo double right %counter% | |||
| ; Available tokens: | |||
| ; %counter% | |||
| ; %pid% | |||
| ; | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c [command]" | |||
| ;;scroll-up = echo scroll up %counter% | |||
| ;;scroll-down = echo scroll down %counter% | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/launcher] | |||
| type = custom/text | |||
| content = | |||
| ; "content" has the same properties as "format-NAME" | |||
| content-background = ${color.primary} | |||
| content-foreground = ${color.module-fg} | |||
| content-padding = 2 | |||
| ; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| click-left = ~/.config/polybar/docky/scripts/launcher.sh & | |||
| ;;click-middle = ~/.config/polybar/docky/scripts/launcher-full | |||
| click-right = ~/.config/polybar/docky/scripts/color-switch.sh & | |||
| ; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| ;;scroll-up = ~/.config/polybar/docky/scripts/launcher.sh & | |||
| ;;scroll-down = ~/.config/polybar/docky/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/sysmenu] | |||
| type = custom/text | |||
| content = | |||
| content-background = ${color.primary} | |||
| content-foreground = ${color.module-fg} | |||
| content-padding = 2 | |||
| click-left = ~/.config/polybar/docky/scripts/powermenu.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/color-switch] | |||
| type = custom/text | |||
| content = | |||
| content-background = ${color.background} | |||
| content-foreground = ${color.foreground} | |||
| click-left = ~/.config/polybar/docky/scripts/color-switch.sh & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/apps] | |||
| type = custom/text | |||
| content-foreground = ${color.foreground-alt} | |||
| content-padding = 1 | |||
| [module/term] | |||
| inherit = module/apps | |||
| content = | |||
| click-left = termite & | |||
| click-middle = urxvt & | |||
| click-right = xfce4-terminal & | |||
| [module/files] | |||
| inherit = module/apps | |||
| content = | |||
| click-left = thunar & | |||
| click-right = pcmanfm & | |||
| [module/browser] | |||
| inherit = module/apps | |||
| content = | |||
| click-left = firefox & | |||
| click-right = chromium & | |||
| [module/settings] | |||
| inherit = module/apps | |||
| content = | |||
| click-left = xfce4-settings-manager & | |||
| click-right = lxappearance & | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/powermenu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = reboot | |||
| menu-0-0-exec = menu-open-1 | |||
| menu-0-1 = shutdown | |||
| menu-0-1-exec = menu-open-2 | |||
| menu-1-0 = back | |||
| menu-1-0-exec = menu-open-0 | |||
| menu-1-1 = reboot | |||
| menu-1-1-exec = systemctl reboot | |||
| menu-2-0 = shutdown | |||
| menu-2-0-exec = systemctl poweroff | |||
| menu-2-1 = back | |||
| menu-2-1-exec = menu-open-0 | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle> <menu> | |||
| format-background = ${color.primary} | |||
| format-foreground = ${color.module-fg} | |||
| format-padding = 2 | |||
| label-open = | |||
| label-close = | |||
| ; Optional item separator | |||
| ; Default: none | |||
| label-separator = " | " | |||
| ;;label-open-foreground = ${color.foreground} | |||
| ;;label-close-foreground = ${color.background} | |||
| ;;label-separator-foreground = ${color.background} | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||
| [module/menu] | |||
| type = custom/menu | |||
| ; If true, <label-toggle> will be to the left of the menu items (default). | |||
| ; If false, it will be on the right of all the items. | |||
| expand-right = true | |||
| ; "menu-LEVEL-N" has the same properties as "label-NAME" with | |||
| ; the additional "exec" property | |||
| ; | |||
| ; Available exec commands: | |||
| ; menu-open-LEVEL | |||
| ; menu-close | |||
| ; Other commands will be executed using "/usr/bin/env sh -c $COMMAND" | |||
| menu-0-0 = Menu | |||
| menu-0-0-exec = ~/.config/polybar/docky/scripts/launcher.sh & | |||
| menu-0-1 = Files | |||
| menu-0-1-exec = thunar & | |||
| menu-0-2 = Terminal | |||
| menu-0-2-exec = termite & | |||
| menu-0-3 = Browser | |||
| menu-0-3-exec = firefox & | |||
| ; Available tags: | |||
| ; <label-toggle> (default) - gets replaced with <label-(open|close)> | |||
| ; <menu> (default) | |||
| ; Note that if you use <label-toggle> you must also include | |||
| ; the definition for <label-open> | |||
| format = <label-toggle> <menu> | |||
| format-background = ${color.primary} | |||
| format-foreground = ${color.module-fg} | |||
| format-padding = 2 | |||
| label-open = | |||
| label-close = | |||
| ; Optional item separator | |||
| ; Default: none | |||
| label-separator = " | " | |||
| ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ | |||