initial commit
This commit is contained in:
9
polybar/LICENSE
Normal file
9
polybar/LICENSE
Normal file
@@ -0,0 +1,9 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 weirdcat
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
2
polybar/README.md
Normal file
2
polybar/README.md
Normal file
@@ -0,0 +1,2 @@
|
||||
# polybar-hack-weirdcatedition
|
||||
|
||||
508
polybar/hack/bars.ini
Normal file
508
polybar/hack/bars.ini
Normal file
@@ -0,0 +1,508 @@
|
||||
;; ┌────────────────────────────────────────────────────┐
|
||||
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▄░█▀█░█▀▄░█▀▀│
|
||||
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▄░█▀█░█▀▄░▀▀█│
|
||||
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀░░▀░▀░▀░▀░▀▀▀│
|
||||
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░│
|
||||
;; └────────────────────────────────────────────────────┘
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[bar]
|
||||
fill = █
|
||||
empty = █
|
||||
indicator =
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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> <label-volume>
|
||||
|
||||
; Available tags:
|
||||
; <label-muted> (default)
|
||||
; <ramp-volume>
|
||||
; <bar-volume>
|
||||
format-muted-prefix =
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
label-volume = %percentage%%
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default
|
||||
label-muted = ""
|
||||
label-muted-foreground = ${color.red}
|
||||
|
||||
; Only applies if <ramp-volume> is used
|
||||
ramp-volume-0 =" "
|
||||
ramp-volume-1 =" "
|
||||
ramp-volume-2 =" "
|
||||
ramp-volume-3 =" "
|
||||
ramp-volume-4 =" "
|
||||
|
||||
; Only applies if <bar-volume> is used
|
||||
bar-volume-width = 11
|
||||
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.primary}
|
||||
bar-volume-foreground-1 = ${color.primary}
|
||||
bar-volume-foreground-2 = ${color.primary}
|
||||
bar-volume-foreground-3 = ${color.primary}
|
||||
bar-volume-foreground-4 = ${color.red}
|
||||
|
||||
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 = <label>
|
||||
format-prefix = " "
|
||||
; 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 = 11
|
||||
bar-gradient = false
|
||||
|
||||
bar-indicator = ${bar.indicator}
|
||||
bar-indicator-foreground = ${color.foreground}
|
||||
|
||||
bar-fill = ${bar.fill}
|
||||
bar-foreground-0 = ${color.primary}
|
||||
bar-foreground-1 = ${color.primary}
|
||||
bar-foreground-2 = ${color.primary}
|
||||
bar-foreground-3 = ${color.primary}
|
||||
bar-foreground-4 = ${color.primary}
|
||||
|
||||
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 = 10
|
||||
|
||||
; 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 = 11
|
||||
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}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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 = 11
|
||||
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}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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 = 11
|
||||
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}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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 = 11
|
||||
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}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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 = <icon-pause><icon-play> <icon-single> <icon-random> <icon-next> <label-song>
|
||||
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 = "%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.foreground}
|
||||
|
||||
; Only applies if <bar-progress> is used
|
||||
bar-progress-width = 11
|
||||
bar-progress-gradient = false
|
||||
|
||||
bar-progress-indicator = ${bar.indicator}
|
||||
bar-progress-indicator-foreground = ${color.yellow}
|
||||
|
||||
bar-progress-fill = ${bar.fill}
|
||||
bar-progress-foreground-0 = ${color.yellow}
|
||||
|
||||
bar-progress-empty = ${bar.empty}
|
||||
bar-progress-empty-foreground = ${color.foreground}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
25
polybar/hack/colors.ini
Normal file
25
polybar/hack/colors.ini
Normal file
@@ -0,0 +1,25 @@
|
||||
;; ┌────────────────────────────────────────────────────────────┐
|
||||
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█░░░█▀█░█▀▄░█▀▀│
|
||||
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░░░█░█░█▀▄░▀▀█│
|
||||
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀│
|
||||
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│
|
||||
;; └────────────────────────────────────────────────────────────┘
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[color]
|
||||
|
||||
;; Use pywal.sh in scripts directory to use colors from an image/wallpaper.
|
||||
|
||||
;; main colors
|
||||
background = #aa141C21
|
||||
foreground = #FFE8EE
|
||||
;; 141C21
|
||||
;foreground = #141C21
|
||||
;background = #aaFFFFFF
|
||||
primary = #027C9B
|
||||
red = #BF562F
|
||||
green = #A57AF0
|
||||
yellow = #BF562F
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
336
polybar/hack/config.ini
Normal file
336
polybar/hack/config.ini
Normal file
@@ -0,0 +1,336 @@
|
||||
;; ┌────────────────────────────────────────────────────────────┐
|
||||
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│
|
||||
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│
|
||||
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│
|
||||
;; │░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/hack/bars.ini
|
||||
include-file = ~/.config/polybar/hack/colors.ini
|
||||
include-file = ~/.config/polybar/hack/modules.ini
|
||||
include-file = ~/.config/polybar/hack/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 = eDP-1
|
||||
|
||||
; 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 = true
|
||||
|
||||
; 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 = 98.9%
|
||||
height = 26
|
||||
|
||||
; 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.6%
|
||||
offset-y = 0.5%
|
||||
|
||||
; 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 = 10
|
||||
radius-bottom = 10
|
||||
|
||||
; 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-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 = 1
|
||||
|
||||
; 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 = "Terminus:size=10;3"
|
||||
font-1 = "siji:size=12;3"
|
||||
font-2 = "Iosevka Nerd Font:size=13;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 google github reddit gmail twitter
|
||||
;modules-center =
|
||||
;modules-right = updates alsa battery network date sysmenu
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[bar/top]
|
||||
inherit = bar/main
|
||||
;border-bottom-size = 1
|
||||
;border-bottom-color = ${color.primary}
|
||||
modules-left = tray sep windows sep monocle
|
||||
modules-center = workspaces
|
||||
modules-right = temperature sep cpu sep memory sep volume sep battery sep bluetooth checknet sep date
|
||||
enable-ipc = true
|
||||
wm-restack = bspwm
|
||||
|
||||
[bar/other]
|
||||
inherit = bar/top
|
||||
monitor = HDMI-1
|
||||
border-bottom-color = ${color.primary}
|
||||
modules-left = tray sep windows sep monocle
|
||||
modules-center = workspaces
|
||||
modules-right = date sep
|
||||
background = ${color.background}
|
||||
foreground = ${color.foreground}
|
||||
font-0 = "Terminus:size=10;3"
|
||||
font-1 = "siji:size=12;3"
|
||||
font-2 = "Iosevka Nerd Font:size=13;3"
|
||||
;modules-center = workspaces
|
||||
;modules-right = ch sep xkeyboard sep date
|
||||
;enable-ipc = true
|
||||
;wm-restack = bspwm
|
||||
|
||||
; [bar/bottom]
|
||||
; inherit = bar/main
|
||||
; bottom = true
|
||||
; border-top-size = 1
|
||||
; border-top-color = ${color.primary}
|
||||
; modules-left =
|
||||
; modules-center = windows
|
||||
; modules-right =
|
||||
; enable-ipc = true
|
||||
; width = 20%
|
||||
; offset-x = 40%
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
; 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 = left
|
||||
|
||||
; If true, the bar will not shift its
|
||||
; contents when the tray changes
|
||||
;tray-detached = true
|
||||
|
||||
; Tray icon max size
|
||||
;tray-maxsize = 21
|
||||
|
||||
; 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 = 5
|
||||
;tray-offset-y = 0
|
||||
|
||||
; Pad the sides of each tray icon
|
||||
;tray-padding = 5
|
||||
|
||||
; 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 = bspwm
|
||||
override-redirect = true
|
||||
|
||||
; 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
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
15
polybar/hack/launch.sh
Executable file
15
polybar/hack/launch.sh
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Add this script to your wm startup file.
|
||||
|
||||
DIR="$HOME/.config/polybar/hack"
|
||||
|
||||
# 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 0.1; done
|
||||
|
||||
# Launch the bar
|
||||
polybar -q top -c "$DIR"/config.ini &
|
||||
polybar -q other -c "$DIR"/config.ini &
|
||||
1177
polybar/hack/modules.ini
Normal file
1177
polybar/hack/modules.ini
Normal file
File diff suppressed because it is too large
Load Diff
321
polybar/hack/preview.ini
Normal file
321
polybar/hack/preview.ini
Normal file
@@ -0,0 +1,321 @@
|
||||
;; ┌────────────────────────────────────────────────────────────────────┐
|
||||
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀█░█▀▄░█▀▀░█░█░▀█▀░█▀▀░█░█░█▀▀│
|
||||
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█▀▀░█▀▄░█▀▀░▀▄▀░░█░░█▀▀░█▄█░▀▀█│
|
||||
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░░░▀░▀░▀▀▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀│
|
||||
;; │░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/hack/bars.ini
|
||||
include-file = ~/.config/polybar/hack/colors.ini
|
||||
include-file = ~/.config/polybar/hack/modules.ini
|
||||
include-file = ~/.config/polybar/hack/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 = 26
|
||||
|
||||
; 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
|
||||
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-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 = 1
|
||||
|
||||
; 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 = "Terminus:size=10;3"
|
||||
font-1 = "waffle: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 = launcher workspaces google github reddit gmail twitter
|
||||
;modules-center =
|
||||
;modules-right = mpd updates alsa battery network date sysmenu
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[bar/top]
|
||||
inherit = bar/main
|
||||
offset-y = 10
|
||||
border-top-size = 2
|
||||
border-top-color = ${color.primary}
|
||||
modules-left = launcher sep title
|
||||
modules-center = workspaces
|
||||
modules-right = alsa sep battery sep checknet sep date sep sysmenu
|
||||
enable-ipc = true
|
||||
|
||||
[bar/mid]
|
||||
inherit = bar/main
|
||||
offset-y = 48
|
||||
modules-center = battery_bar sep cpu_bar sep memory_bar sep filesystem_bar sep mpd_bar sep volume sep brightness
|
||||
enable-ipc = true
|
||||
|
||||
[bar/bottom]
|
||||
inherit = bar/main
|
||||
offset-y = 84
|
||||
border-bottom-size = 2
|
||||
border-bottom-color = ${color.primary}
|
||||
modules-left = menu sep mpd sep color-switch
|
||||
modules-center = cpu sep memory sep filesystem sep temperature sep updates sep speed
|
||||
modules-right = backlight sep pulseaudio sep network sep keyboard sep powermenu
|
||||
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
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
14
polybar/hack/preview.sh
Executable file
14
polybar/hack/preview.sh
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
DIR="$HOME/.config/polybar/hack"
|
||||
|
||||
# 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 &
|
||||
8
polybar/hack/scripts/bluetooth.sh
Executable file
8
polybar/hack/scripts/bluetooth.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
devices_amount=$(bluetoothctl devices | cut -f2 -d' ' | while read uuid; do bluetoothctl info $uuid; done|grep -e "Connected: yes" | wc -l)
|
||||
|
||||
if [ $devices_amount -gt 0 ]; then
|
||||
echo $devices_amount
|
||||
else
|
||||
echo ""
|
||||
fi
|
||||
|
||||
19
polybar/hack/scripts/check-network
Executable file
19
polybar/hack/scripts/check-network
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
count=0
|
||||
connected=" "
|
||||
disconnected=" "
|
||||
|
||||
ID="$(ip link | awk '/state UP/ {print $2}')"
|
||||
|
||||
while true; do
|
||||
if (ping -c 1 archlinux.org || ping -c 1 bitbucket.org || ping -c 1 github.com || ping -c 1 sourceforge.net) &>/dev/null; then
|
||||
if [[ $ID == e* ]]; then
|
||||
echo "$connected" ; sleep 10
|
||||
else
|
||||
echo "$connected" ; sleep 10
|
||||
fi
|
||||
else
|
||||
echo "$disconnected" ; sleep 5
|
||||
fi
|
||||
done
|
||||
117
polybar/hack/scripts/checkupdates
Executable file
117
polybar/hack/scripts/checkupdates
Executable file
@@ -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:
|
||||
55
polybar/hack/scripts/color-switch.sh
Executable file
55
polybar/hack/scripts/color-switch.sh
Executable file
@@ -0,0 +1,55 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SDIR="$HOME/.config/polybar/hack/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
|
||||
96
polybar/hack/scripts/colors-dark.sh
Executable file
96
polybar/hack/scripts/colors-dark.sh
Executable file
@@ -0,0 +1,96 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Color files
|
||||
PFILE="$HOME/.config/polybar/hack/colors.ini"
|
||||
RFILE="$HOME/.config/polybar/hack/scripts/rofi/colors.rasi"
|
||||
|
||||
# Change colors
|
||||
change_color() {
|
||||
# polybar
|
||||
sed -i -e 's/background = #.*/background = #141C21/g' $PFILE
|
||||
sed -i -e 's/foreground = #.*/foreground = #FFFFFF/g' $PFILE
|
||||
sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE
|
||||
|
||||
# rofi
|
||||
cat > $RFILE <<- EOF
|
||||
/* colors */
|
||||
|
||||
* {
|
||||
al: #00000000;
|
||||
bg: #141C21FF;
|
||||
ac: ${AC}FF;
|
||||
se: ${AC}26;
|
||||
fg: #FFFFFFFF;
|
||||
}
|
||||
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
|
||||
96
polybar/hack/scripts/colors-light.sh
Executable file
96
polybar/hack/scripts/colors-light.sh
Executable file
@@ -0,0 +1,96 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Color files
|
||||
PFILE="$HOME/.config/polybar/hack/colors.ini"
|
||||
RFILE="$HOME/.config/polybar/hack/scripts/rofi/colors.rasi"
|
||||
|
||||
# Change colors
|
||||
change_color() {
|
||||
# polybar
|
||||
sed -i -e 's/background = #.*/background = #FFFFFF/g' $PFILE
|
||||
sed -i -e 's/foreground = #.*/foreground = #1F1F1F/g' $PFILE
|
||||
sed -i -e "s/primary = #.*/primary = $AC/g" $PFILE
|
||||
|
||||
# rofi
|
||||
cat > $RFILE <<- EOF
|
||||
/* colors */
|
||||
|
||||
* {
|
||||
al: #00000000;
|
||||
bg: #FFFFFFFF;
|
||||
ac: ${AC}FF;
|
||||
se: ${AC}26;
|
||||
fg: #1F1F1FFF;
|
||||
}
|
||||
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
|
||||
6
polybar/hack/scripts/dim.sh
Executable file
6
polybar/hack/scripts/dim.sh
Executable file
@@ -0,0 +1,6 @@
|
||||
# Check if xset q has "timeout" equal to 0 and if so, return 1
|
||||
if xset q | grep "timeout: 0" >/dev/null; then
|
||||
echo "1"
|
||||
else
|
||||
echo ""
|
||||
fi
|
||||
10
polybar/hack/scripts/is-monocle.sh
Executable file
10
polybar/hack/scripts/is-monocle.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Used to check whether the current focused
|
||||
# window in BSPWM is using the monocle layout.
|
||||
|
||||
if [[ $(bspc query -T -d focused) == *"monocle"* ]]; then
|
||||
echo 1
|
||||
else
|
||||
echo 0
|
||||
fi
|
||||
3
polybar/hack/scripts/launcher.sh
Executable file
3
polybar/hack/scripts/launcher.sh
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/polybar/hack/scripts/rofi/launcher.rasi
|
||||
95
polybar/hack/scripts/powermenu.sh
Executable file
95
polybar/hack/scripts/powermenu.sh
Executable file
@@ -0,0 +1,95 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
## Author : Aditya Shakya
|
||||
## Mail : adi1090x@gmail.com
|
||||
## Github : @adi1090x
|
||||
## Twitter : @adi1090x
|
||||
|
||||
dir="~/.config/polybar/hack/scripts/rofi"
|
||||
uptime=$(uptime -p | sed -e 's/up //g')
|
||||
|
||||
rofi_command="rofi -no-config -theme $dir/powermenu.rasi"
|
||||
|
||||
# Options
|
||||
shutdown=" Shutdown"
|
||||
reboot=" Restart"
|
||||
lock=" Lock"
|
||||
suspend=" Sleep"
|
||||
logout=" Logout"
|
||||
|
||||
# Confirmation
|
||||
confirm_exit() {
|
||||
rofi -dmenu\
|
||||
-no-config\
|
||||
-i\
|
||||
-no-fixed-num-lines\
|
||||
-p "Are You Sure? : "\
|
||||
-theme $dir/confirm.rasi
|
||||
}
|
||||
|
||||
# Message
|
||||
msg() {
|
||||
rofi -no-config -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
|
||||
60
polybar/hack/scripts/pywal.sh
Executable file
60
polybar/hack/scripts/pywal.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Color files
|
||||
PFILE="$HOME/.config/polybar/hack/colors.ini"
|
||||
RFILE="$HOME/.config/polybar/hack/scripts/rofi/colors.rasi"
|
||||
WFILE="$HOME/.cache/wal/colors.sh"
|
||||
|
||||
# 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/primary = #.*/primary = $AC/g" $PFILE
|
||||
|
||||
# rofi
|
||||
cat > $RFILE <<- EOF
|
||||
/* colors */
|
||||
|
||||
* {
|
||||
al: #00000000;
|
||||
bg: ${BG}FF;
|
||||
ac: ${AC}FF;
|
||||
se: ${AC}26;
|
||||
fg: ${FG}FF;
|
||||
}
|
||||
EOF
|
||||
|
||||
polybar-msg cmd restart
|
||||
}
|
||||
|
||||
# Main
|
||||
if [[ -x "`which wal`" ]]; then
|
||||
if [[ "$1" ]]; then
|
||||
pywal_get "$1"
|
||||
|
||||
# Source the pywal color file
|
||||
if [[ -e "$WFILE" ]]; then
|
||||
. "$WFILE"
|
||||
else
|
||||
echo 'Color file does not exist, exiting...'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BG=`printf "%s\n" "$background"`
|
||||
FG=`printf "%s\n" "$foreground"`
|
||||
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
|
||||
89
polybar/hack/scripts/random.sh
Executable file
89
polybar/hack/scripts/random.sh
Executable file
@@ -0,0 +1,89 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Color files
|
||||
PFILE="$HOME/.config/polybar/hack/colors.ini"
|
||||
RFILE="$HOME/.config/polybar/hack/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/primary = #.*/primary = $AC/g" $PFILE
|
||||
|
||||
# rofi
|
||||
cat > $RFILE <<- EOF
|
||||
/* colors */
|
||||
|
||||
* {
|
||||
al: #00000000;
|
||||
bg: #1F1F1FFF;
|
||||
ac: ${AC}FF;
|
||||
se: ${AC}26;
|
||||
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
|
||||
}
|
||||
|
||||
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"
|
||||
else
|
||||
FG="#F5F5F5"
|
||||
fi
|
||||
}
|
||||
|
||||
# Main
|
||||
BG='#1f1f1f' # change to light bg
|
||||
FG='#FFFFFF' # change to dark fg
|
||||
AC=`get_random_color`
|
||||
|
||||
#BG=`get_random_color`
|
||||
#HEX=${BG:1}
|
||||
#hex_to_rgb $HEX
|
||||
#get_fg_color
|
||||
|
||||
change_color
|
||||
9
polybar/hack/scripts/rofi/colors.rasi
Normal file
9
polybar/hack/scripts/rofi/colors.rasi
Normal file
@@ -0,0 +1,9 @@
|
||||
/* colors */
|
||||
|
||||
* {
|
||||
al: #00000000;
|
||||
bg: #141C21FF;
|
||||
ac: #e53935FF;
|
||||
se: #e5393526;
|
||||
fg: #FFFFFFFF;
|
||||
}
|
||||
24
polybar/hack/scripts/rofi/confirm.rasi
Normal file
24
polybar/hack/scripts/rofi/confirm.rasi
Normal file
@@ -0,0 +1,24 @@
|
||||
/* Confirm Dialog */
|
||||
|
||||
@import "colors.rasi"
|
||||
|
||||
* {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
font: "Terminus 9";
|
||||
}
|
||||
|
||||
window {
|
||||
width: 225px;
|
||||
padding: 25px;
|
||||
border: 1px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
location: center;
|
||||
y-offset: -2em;
|
||||
}
|
||||
|
||||
entry {
|
||||
expand: true;
|
||||
text-color: @ac;
|
||||
}
|
||||
119
polybar/hack/scripts/rofi/launcher.rasi
Normal file
119
polybar/hack/scripts/rofi/launcher.rasi
Normal file
@@ -0,0 +1,119 @@
|
||||
/*
|
||||
*
|
||||
* Author : Aditya Shakya
|
||||
* Mail : adi1090x@gmail.com
|
||||
* Github : @adi1090x
|
||||
* Twitter : @adi1090x
|
||||
*
|
||||
*/
|
||||
|
||||
configuration {
|
||||
font: "Terminus 9";
|
||||
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: 2px;
|
||||
border-color: @ac;
|
||||
border-radius: 0px;
|
||||
width: 450px;
|
||||
location: center;
|
||||
x-offset: 0;
|
||||
y-offset: 0;
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
padding: 9px 10px 10px 10px;
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
font: "Iosevka Nerd Font 8";
|
||||
}
|
||||
|
||||
entry {
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
placeholder-color: @ac;
|
||||
expand: true;
|
||||
horizontal-align: 0;
|
||||
placeholder: "Search...";
|
||||
padding: 10px 10px 10px 0px;
|
||||
border-radius: 0px;
|
||||
blink: true;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
children: [ prompt, entry ];
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
expand: false;
|
||||
border: 0px 0px 1px 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
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: 10px;
|
||||
padding: 2px 10px 10px 10px;
|
||||
}
|
||||
|
||||
element {
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
orientation: horizontal;
|
||||
border-radius: 0px;
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
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 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
}
|
||||
24
polybar/hack/scripts/rofi/message.rasi
Normal file
24
polybar/hack/scripts/rofi/message.rasi
Normal file
@@ -0,0 +1,24 @@
|
||||
/* Confirm Dialog */
|
||||
|
||||
@import "colors.rasi"
|
||||
|
||||
* {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
font: "Terminus 9";
|
||||
}
|
||||
|
||||
window {
|
||||
width: 320px;
|
||||
padding: 25px;
|
||||
border: 1px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
location: center;
|
||||
y-offset: -2em;
|
||||
}
|
||||
|
||||
entry {
|
||||
expand: true;
|
||||
text-color: @ac;
|
||||
}
|
||||
128
polybar/hack/scripts/rofi/networkmenu.rasi
Normal file
128
polybar/hack/scripts/rofi/networkmenu.rasi
Normal file
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
*
|
||||
* Author : Aditya Shakya
|
||||
* Mail : adi1090x@gmail.com
|
||||
* Github : @adi1090x
|
||||
* Twitter : @adi1090x
|
||||
*
|
||||
*/
|
||||
|
||||
configuration {
|
||||
font: "Terminus 9";
|
||||
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: 2px;
|
||||
border-color: @ac;
|
||||
border-radius: 0px;
|
||||
width: 400px;
|
||||
location: center;
|
||||
x-offset: 0;
|
||||
y-offset: 0;
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
padding: 10px 10px 10px 0px;
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
font: "Terminus 9";
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
padding: 8px 15px 10px 15px;
|
||||
font: "Iosevka Nerd Font 8";
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
expand: false;
|
||||
str: "直";
|
||||
}
|
||||
|
||||
entry {
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
placeholder-color: @ac;
|
||||
expand: true;
|
||||
horizontal-align: 0;
|
||||
placeholder: "Search...";
|
||||
padding: 10px 10px 10px 0px;
|
||||
border-radius: 0px;
|
||||
blink: true;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
children: [ textbox-prompt-colon, prompt ];
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
expand: false;
|
||||
border: 0px 0px 1px 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
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: 10px;
|
||||
padding: 2px 10px 10px 10px;
|
||||
}
|
||||
|
||||
element {
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
orientation: horizontal;
|
||||
border-radius: 0px;
|
||||
padding: 8px 8px 8px -10px;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
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 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
}
|
||||
128
polybar/hack/scripts/rofi/powermenu.rasi
Normal file
128
polybar/hack/scripts/rofi/powermenu.rasi
Normal file
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
*
|
||||
* Author : Aditya Shakya
|
||||
* Mail : adi1090x@gmail.com
|
||||
* Github : @adi1090x
|
||||
* Twitter : @adi1090x
|
||||
*
|
||||
*/
|
||||
|
||||
configuration {
|
||||
font: "Terminus 9";
|
||||
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: 2px;
|
||||
border-color: @ac;
|
||||
border-radius: 0px;
|
||||
width: 300px;
|
||||
location: center;
|
||||
x-offset: 0;
|
||||
y-offset: 0;
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
padding: 10px 10px 10px 0px;
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
font: "Terminus 9";
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
padding: 8px 15px 10px 15px;
|
||||
font: "Iosevka Nerd Font 8";
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
expand: false;
|
||||
str: "";
|
||||
}
|
||||
|
||||
entry {
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
placeholder-color: @ac;
|
||||
expand: true;
|
||||
horizontal-align: 0;
|
||||
placeholder: "Search...";
|
||||
padding: 10px 10px 10px 0px;
|
||||
border-radius: 0px;
|
||||
blink: true;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
children: [ textbox-prompt-colon, prompt ];
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
expand: false;
|
||||
border: 0px 0px 1px 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
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: 10px;
|
||||
padding: 2px 10px 10px 10px;
|
||||
}
|
||||
|
||||
element {
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
orientation: horizontal;
|
||||
border-radius: 0px;
|
||||
padding: 8px 8px 8px -16px;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
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 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
}
|
||||
128
polybar/hack/scripts/rofi/styles.rasi
Normal file
128
polybar/hack/scripts/rofi/styles.rasi
Normal file
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
*
|
||||
* Author : Aditya Shakya
|
||||
* Mail : adi1090x@gmail.com
|
||||
* Github : @adi1090x
|
||||
* Twitter : @adi1090x
|
||||
*
|
||||
*/
|
||||
|
||||
configuration {
|
||||
font: "Terminus 9";
|
||||
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: 2px;
|
||||
border-color: @ac;
|
||||
border-radius: 0px;
|
||||
width: 300px;
|
||||
location: center;
|
||||
x-offset: 0;
|
||||
y-offset: 0;
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
padding: 10px 10px 10px 0px;
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
font: "Terminus 9";
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
padding: 8px 15px 10px 15px;
|
||||
font: "Iosevka Nerd Font 8";
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
expand: false;
|
||||
str: "";
|
||||
}
|
||||
|
||||
entry {
|
||||
background-color: @al;
|
||||
text-color: @ac;
|
||||
placeholder-color: @ac;
|
||||
expand: true;
|
||||
horizontal-align: 0;
|
||||
placeholder: "Search...";
|
||||
padding: 10px 10px 10px 0px;
|
||||
border-radius: 0px;
|
||||
blink: true;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
children: [ textbox-prompt-colon, entry ];
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
expand: false;
|
||||
border: 0px 0px 1px 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
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: 10px;
|
||||
padding: 2px 10px 10px 10px;
|
||||
}
|
||||
|
||||
element {
|
||||
background-color: @al;
|
||||
text-color: @fg;
|
||||
orientation: horizontal;
|
||||
border-radius: 0px;
|
||||
padding: 8px 8px 8px -16px;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
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 0px;
|
||||
border-radius: 0px;
|
||||
border-color: @ac;
|
||||
}
|
||||
46
polybar/hack/scripts/updates.sh
Executable file
46
polybar/hack/scripts/updates.sh
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg
|
||||
#~/.config/polybar/hack/scripts/updates.s
|
||||
|
||||
get_total_updates() { UPDATES=$(~/.config/polybar/hack/scripts/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 > 100 )); then
|
||||
notify-send -u low -i $NOTIFY_ICON \
|
||||
"Attention," "$UPDATES New packages"
|
||||
elif (( UPDATES > 50 )); then
|
||||
notify-send -u low -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 ""
|
||||
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 ""
|
||||
sleep 1800
|
||||
get_total_updates
|
||||
done
|
||||
done
|
||||
60
polybar/hack/scripts/windows.sh
Executable file
60
polybar/hack/scripts/windows.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/sh
|
||||
|
||||
active_window=$(xprop -root _NET_ACTIVE_WINDOW|cut -d ' ' -f 5|sed -e 's/../0&/2')
|
||||
|
||||
current_display=$(wmctrl -d|grep "*"|awk '{print $1}')
|
||||
|
||||
#########################
|
||||
# Simple version BEGIN
|
||||
#
|
||||
#current_windows=$(wmctrl -lx|awk -v current_display="$current_display" -v active_window="$active_window" '
|
||||
#
|
||||
# {if ($2==current_display) {
|
||||
#
|
||||
# if ($1==active_window) {
|
||||
#
|
||||
# $3="#"$3;
|
||||
#
|
||||
# }
|
||||
#
|
||||
# split($3,window_title,".")
|
||||
#
|
||||
# print "%{A1: wmctrl -ia "$1" & disown:}"window_title[1]"%{A}"
|
||||
#
|
||||
# }
|
||||
#
|
||||
# }')
|
||||
#
|
||||
# Simple version END
|
||||
#########################
|
||||
|
||||
#########################
|
||||
# Decorated version BEGIN
|
||||
#
|
||||
color1="00AAFF" # Blue
|
||||
|
||||
active_window_decoration_style_left_side="%{F#$color1}%{+u}%{u#$color1}"
|
||||
active_window_decoration_style_right_side="%{-u}%{F-}"
|
||||
|
||||
current_windows=$(wmctrl -lx|awk -v current_display="$current_display" -v active_window="$active_window" -v active_window_decoration_style_left_side="$active_window_decoration_style_left_side" -v active_window_decoration_style_right_side="$active_window_decoration_style_right_side" '
|
||||
|
||||
{if ($2==current_display) {
|
||||
|
||||
split($3,window_title,".")
|
||||
|
||||
if ($1==active_window) {
|
||||
|
||||
window_title[1]=active_window_decoration_style_left_side window_title[1] active_window_decoration_style_right_side
|
||||
|
||||
}
|
||||
|
||||
print "%{A1: wmctrl -ia "$1" & disown:}"window_title[1]"%{A}"
|
||||
|
||||
}
|
||||
|
||||
}')
|
||||
#
|
||||
# Decorated version END
|
||||
#######################
|
||||
|
||||
echo $current_windows
|
||||
304
polybar/hack/user_modules.ini
Normal file
304
polybar/hack/user_modules.ini
Normal file
@@ -0,0 +1,304 @@
|
||||
;; ┌──────────────────────────────────────────────────────────────────────────────-----┐
|
||||
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█░█░█▀▀░█▀▀░█▀▄░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ │
|
||||
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░▀▀█░█▀▀░█▀▄░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ │
|
||||
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ │
|
||||
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
|
||||
;; └──────────────────────────────────────────────────────────────────────────────-----┘
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/checknet]
|
||||
type = custom/script
|
||||
|
||||
; Available tokens:
|
||||
; %counter%
|
||||
; Command to be executed (using "/usr/bin/env sh -c [command]")
|
||||
exec = ~/.config/polybar/hack/scripts/check-network
|
||||
|
||||
; 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 = networkmanager_dmenu &
|
||||
click-right = networkmanager_dmenu &
|
||||
;;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/updates]
|
||||
type = custom/script
|
||||
|
||||
; Available tokens:
|
||||
; %counter%
|
||||
; Command to be executed (using "/usr/bin/env sh -c [command]")
|
||||
exec = ~/.config/polybar/hack/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 = 2
|
||||
|
||||
; 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-foreground = ${color.primary}
|
||||
|
||||
; "click-(left|middle|right)" will be executed using "/usr/bin/env sh -c $COMMAND"
|
||||
click-left = ~/.config/polybar/hack/scripts/launcher.sh &
|
||||
;;click-middle = ~/.config/polybar/hack/scripts/launcher-full
|
||||
click-right = ~/.config/polybar/hack/scripts/color-switch.sh &
|
||||
|
||||
; "scroll-(up|down)" will be executed using "/usr/bin/env sh -c $COMMAND"
|
||||
;;scroll-up = ~/.config/polybar/hack/scripts/launcher.sh &
|
||||
;;scroll-down = ~/.config/polybar/hack/scripts/color-switch.sh &
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/sysmenu]
|
||||
type = custom/text
|
||||
content = " "
|
||||
|
||||
content-foreground = ${color.primary}
|
||||
|
||||
click-left = ~/.config/polybar/hack/scripts/powermenu.sh &
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/color-switch]
|
||||
type = custom/text
|
||||
content = " "
|
||||
|
||||
content-foreground = ${color.primary}
|
||||
click-left = ~/.config/polybar/hack/scripts/color-switch.sh &
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/sep]
|
||||
type = custom/text
|
||||
content = " "
|
||||
content-foreground = ${color.background}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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-foreground = ${color.primary}
|
||||
|
||||
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/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-foreground = ${color.primary}
|
||||
|
||||
label-open =
|
||||
label-close =
|
||||
|
||||
; Optional item separator
|
||||
; Default: none
|
||||
label-separator = " | "
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/vpn]
|
||||
type = custom/script
|
||||
exec = ip link show | grep '_wg:' | awk -F ': ' '{print $2}' | awk '{print $1}'
|
||||
exec-if = echo 1
|
||||
interval = 5
|
||||
format-prefix-foreground = ${color.foreground}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/monocle]
|
||||
type = custom/script
|
||||
exec = echo MONOCLE
|
||||
exec-if = bspc query -T -d focused | grep -e "monocle"
|
||||
interval = 0.1
|
||||
format-foreground = ${color.red}
|
||||
format-prefix-foreground = ${color.red}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/vodka]
|
||||
type = custom/script
|
||||
exec = echo RUSSIAN
|
||||
exec-if = xset -q | grep LED | awk '{ print $10 }' | grep -e '00001001'
|
||||
interval = 0.1
|
||||
format-foreground = ${color.red}
|
||||
format-prefix-foreground = ${color.red}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/windows]
|
||||
type = custom/script
|
||||
exec = ~/.config/polybar/hack/scripts/windows.sh
|
||||
format = <label>
|
||||
label = %output%
|
||||
label-padding = 1
|
||||
interval = 1
|
||||
|
||||
[module/bluetooth]
|
||||
type = custom/script
|
||||
exec = ~/.config/polybar/hack/scripts/bluetooth.sh
|
||||
format = "<label> "
|
||||
format-prefix = " "
|
||||
label = %output%
|
||||
label-padding = 1
|
||||
interval = 2
|
||||
|
||||
[module/dim]
|
||||
type = custom/script
|
||||
exec = ~/.config/polybar/hack/scripts/dim.sh
|
||||
format = "<label> "
|
||||
format-prefix = " "
|
||||
label = ""
|
||||
label-padding = 1
|
||||
interval = 5
|
||||
33
polybar/launch.sh
Executable file
33
polybar/launch.sh
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
dir="$HOME/.config/polybar"
|
||||
themes=(`ls --hide="launch.sh" $dir`)
|
||||
|
||||
launch_bar() {
|
||||
# Terminate already running bar instances
|
||||
killall polybar
|
||||
|
||||
# Wait until the processes have been shut down
|
||||
while pgrep -u $UID -x polybar >/dev/null; do sleep 0.1; done
|
||||
|
||||
# Launch the bar
|
||||
if [[ "$style" == "hack" || "$style" == "cuts" ]]; then
|
||||
polybar -q top -c "$dir/$style/config.ini" &
|
||||
elif [[ "$style" == "pwidgets" ]]; then
|
||||
bash "$dir"/pwidgets/launch.sh --main
|
||||
else
|
||||
polybar -q main -c "$dir/$style/config.ini" &
|
||||
fi
|
||||
}
|
||||
|
||||
if [[ "$1" == "--hack" ]]; then
|
||||
style="hack"
|
||||
launch_bar
|
||||
else
|
||||
cat <<- EOF
|
||||
Usage : launch.sh --theme
|
||||
|
||||
Available Themes :
|
||||
--hack
|
||||
EOF
|
||||
fi
|
||||
Reference in New Issue
Block a user