holy moly we're almost there

This commit is contained in:
Anish Lakhwara
2022-09-19 08:13:50 +10:00
commit 3693732aac
203 changed files with 17247 additions and 0 deletions
+80
View File
@@ -0,0 +1,80 @@
!! Colors
#define blk #1F2430
#define bblk #F28779
#define red #A6CC70
#define bred #FFCC66
#define grn #5CCFE6
#define bgrn #F29E74
#define ylw #77A8D9
#define bylw #5C6773
#define blu #707A8C
#define bblu #F27983
#define mag #BAE67E
#define bmag #FFD580
#define cyn #73D0FF
#define bcyn #FFA759
#define wht #95E6CB
#define bwht #CBCCC6
#define bg blk
#define fg wht
*.foreground: fg
*.background: bg
*.cursorColor: mag
*.color0: blk
*.color8: bblk
*.color1: red
*.color9: bred
*.color2: grn
*.color10: bgrn
*.color3: ylw
*.color11: bylw
*.color4: blu
*.color12: bblu
*.color5: mag
*.color13: bmag
*.color6: cyn
*.color14: bcyn
*.color7: wht
*.color15: bwht
! greys
*.color234: #1E2029
*.color235: #282a36
*.color236: #373844
*.color237: #44475a
*.color239: #565761
*.color240: #6272a4
*.color241: #b6b6b2
!! general
st.scratch.font: JetBrainsMono:pixelsize=16
!! xst
st.font: JetBrainsMono:pixelsize=12
st.borderpx: 10
!! urxvt
URxvt*depth: 32
URxvt*.background: blk
URxvt*.borderless: 1
URxvt*.buffered: true
URxvt*.cursorBlink: true
URxvt*.font: xft:Fira Code:pixelsize=12
URxvt*.internalBorder: 10
URxvt*.letterSpace: 0
URxvt*.lineSpace: 0
URxvt*.loginShell: false
URxvt*.matcher.button: 1
URxvt*.matcher.rend.0: Uline Bold fg5
URxvt*.saveLines: 5000
URxvt*.scrollBar: false
URxvt*.underlineColor: grey
URxvt.clipboard.autocopy: true
URxvt.iso14755: false
URxvt.iso14755_52: false
URxvt.perl-ext-common: default,matcher
+44
View File
@@ -0,0 +1,44 @@
!
! Generated with :
! XRDB2Xreources.py
!
*.foreground: #1F2430
*.background: #0f1419
*.cursorColor: #f29718
!
! Black
*.color0: #000000
*.color8: #323232
!
! Red
*.color1: #ff3333
*.color9: #ff6565
!
! Green
*.color2: #b8cc52
*.color10: #eafe84
!
! Yellow
*.color3: #e7c547
*.color11: #fff779
!
! Blue
*.color4: #36a3d9
*.color12: #68d5ff
!
! Magenta
*.color5: #f07178
*.color13: #ffa3aa
!
! Cyan
*.color6: #95e6cb
*.color14: #c7fffd
!
! White
*.color7: #ffffff
*.color15: #ffffff
!
! Bold, Italic, Underline
*.colorBD: #e6e1cf
!*.colorIT:
!*.colorUL:
@@ -0,0 +1,23 @@
background #0A0E14
foreground #B3B1AD
cursor #E6B450
selection_background #273747
color0 #000000
color8 #4D5566
color1 #FF3333
color9 #D96C75
color2 #C2D94C
color10 #91B362
color3 #FF8F40
color11 #F29668
color4 #59C2FF
color12 #6994BF
color5 #D4BFFF
color13 #A37ACC
color6 #95E6CB
color14 #4CBF99
color7 #ffffff
color15 #F0F0F0
selection_foreground #B3B1AD
+25
View File
@@ -0,0 +1,25 @@
#: This is a port of ayu Mirage color scheme
#: based on :
#: https://github.com/ayu-theme/ayu-colors
background #1F2430
foreground #CBCCC6
cursor #FFCC66
selection_background #33415E
color0 #000000
color8 #4D5566
color1 #FF3333
color9 #F27983
color2 #BAE67E
color10 #A6CC70
color3 #FFA759
color11 #F29E74
color4 #73D0FF
color12 #77A8D9
color5 #D4BFFF
color13 #A37ACC
color6 #95E6CB
color14 #4CBF99
color7 #ffffff
color15 #F0F0F0
selection_foreground #CBCCC6
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

+11
View File
@@ -0,0 +1,11 @@
#! /usr/bin/env bash
connect() {
xrandr --output HDMI-2 --same-as eDP-1
}
disconnect() {
xrandr --output HDMI-2 --off
}
xrandr | grep "HDMI-2 connected" &>>/dev/null && connect || disconnect
+3
View File
@@ -0,0 +1,3 @@
#!/usr/bin/env bash
URL="$(xclip -selection clipboard -o)"
mpv $URL
+68
View File
@@ -0,0 +1,68 @@
#!/usr/bin/env bash
# Prompts for a pass entry, then for a specific field. Similar to passmenu, but
# uses rofi, and can resume from a previous session.
#
# Example: passmenu [RESUME]
ROFI_CMD='rofi -dmenu -theme theme/passmenu.rasi'
MSG_CMD='notify-send'
set -e
shopt -s nullglob globstar
for prog in xclip pass; do
if ! command -v "$prog" >/dev/null; then
>&2 echo "$prog not installed, aborting"
exit 1
fi
done
if [[ $1 == -r ]]; then
resume=1; shift
fi
url=
# Get qutebrowser's current url
win=$(xdotool getactivewindow)
if [[ -n $win ]]; then
winname=$(xdotool getwindowname $win)
if [[ $winname =~ " - Mozilla Firefox$" ]]; then
url=${winname% - Mozilla*}
url=${url##* - }
while (( ${#url//[^.]/} > 1 )); do
url=${url#*.}
done
fi
fi
LAST_ENTRY_FILE=/tmp/_upm
if [[ -n $resume && -f $LAST_ENTRY_FILE ]]; then
entry="$(<$LAST_ENTRY_FILE)"
else
prefix=${PASSWORD_STORE_DIR-~/.password-store}
password_files=( "$prefix"/**/*.gpg )
password_files=( "${password_files[@]#"$prefix"/}" )
password_files=( "${password_files[@]%.gpg}" )
entry=$(printf "%s\n" "${password_files[@]}" | $ROFI_CMD -p "..." -filter "$url")
fi
if [[ -z $entry ]]; then
$MSG_CMD "Error!" "Failed to select $entry"
exit 1
fi
echo "$entry" >/tmp/_upm
secrets="$(pass show "$entry")"
if [[ -n $secrets ]]; then
fields=$(awk -F': ' 'NR>1 && !/^otpauth:/ {print $1}' <<<"$secrets")
field=$(printf "password\n%s\notp\n" "${fields[@]}" | $ROFI_CMD -p "$entry")
case $field in
password) pass -c "$entry" ;;
otp) printf "%s" "$(pass otp -c "$entry")" ;;
*) printf "%s" "$(awk -v "key=$field:" '$1 == key {print $2}' <<<"$secrets")" | xclip -selection clipboard -in ;;
esac
$MSG_CMD "Success!" "Copied <b>$entry/$field</b> to clipboard for 45s"
else
$MSG_CMD "Error!" "Failed to retrieve $entry"
exit 2
fi
+31
View File
@@ -0,0 +1,31 @@
#!/usr/bin/env sh
rofi_command="rofi -theme theme/powermenu.rasi"
### Options ###
power_off="\tShutdown"
reboot="\tReboot"
lock="\tLock"
suspend="鈴\tSleep"
log_out="\tLogout"
# Variable passed to rofi
options="$power_off\n$reboot\n$lock\n$suspend\n$log_out"
case "$(echo -e "$options" | $rofi_command -dmenu)" in
" Shutdown")
systemctl poweroff
;;
" Reboot")
systemctl reboot
;;
" Lock")
dm-tool lock
;;
"鈴 Sleep")
dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Pause
systemctl suspend
;;
" Logout")
bspc quit
;;
esac
+53
View File
@@ -0,0 +1,53 @@
#!/usr/bin/env bash
timer=5
# Options
select="麗"
window="类"
screen=""
delay=""
cancel=""
# Variable passed to rofi
options="$select\n$window\n$screen\n$delay\n$cancel"
rofi_command="rofi -theme theme/screenshotmenu.rasi"
setFilename() {
directory="/tmp/"
filename="IMG_$(date +%Y%m%d_%H%M%S).jpg"
filepath=$directory$filename
}
notify() {
dunstify "Screenshot saved and copied to clipboard" -i accessories-screenshot
}
chosen="$(echo -e "$options" | $rofi_command -dmenu)"
case $chosen in
$select)
setFilename
maim -Buosd 0.25 \
| tee $filepath | xclip -selection c -t image/png
notify
;;
$window)
setFilename
maim -Buod 0.25 -i $(xdotool getactivewindow) \
| tee $filepath | xclip -selection c -t image/png
notify
;;
$screen)
setFilename
maim -Buod 0.25 \
| tee $filepath | xclip -selection c -t image/png
notify
;;
$delay)
setFilename
maim -Buod $timer \
| tee $filepath | xclip -selection c -t image/png
notify
;;
esac
+48
View File
@@ -0,0 +1,48 @@
#!/usr/bin/env bash
# case $HOSTNAME in
# kuro) export LAN=eno1 ;;
# shiro) export LAN=wlp3s0 ;;
# esac
export MONITOR=$(xrandr -q | grep primary | cut -d' ' -f1)
export MONITORS=( $(xrandr -q | grep ' connected' | cut -d' ' -f1) )
MONITOR=${MONITOR:-${MONITORS[0]}}
# Only have workspaces for primary monitor
bspc monitor $MONITOR -d {1,2,3,4,5}
bspc config remove_disabled_monitors true
bspc config remove_unplugged_monitors true
bspc config borderless_monocle true
bspc config gapless_monocle true
bspc config border_width 1
bspc config window_gap 4
bspc config normal_border_color "#181a23"
bspc config active_border_color "#181a23"
bspc config focused_border_color "#bd93f9"
bspc config presel_feedback_color "#bd93f9"
# Extra padding for polybar
bspc config -m primary top_padding 34
bspc config -m primary bottom_padding 0
# Rules
bspc rule -r '*'
bspc rule -a Pinentry state=floating center=on
bspc rule -a Emacs split_ratio=0.28 state=tiled
bspc rule -a Firefox split_ratio=0.32
bspc rule -a feh state=fullscreen
bspc rule -a 'Emacs:org*' state=floating
bspc rule -a 'Emacs:scratch' state=floating
bspc rule -a 'Emacs:emacs-everywhere' state=floating sticky=on
bspc rule -a '*:scratch' state=floating sticky=on center=on border=off rectangle=1000x800+0+0
# polybar
for file in $XDG_CONFIG_HOME/bspwm/rc.d/*; do
source "$file"
done
+151
View File
@@ -0,0 +1,151 @@
{ pkgs, config, lib, ... }:
let
dracula-gtk = pkgs.fetchFromGitHub {
owner = "dracula";
repo = "gtk";
rev = "502f212d83bc67e8f0499574546b99ec6c8e16f9";
sha256 = "1wx9nzq7cqyvpaq4j60bs8g7gh4jk8qg4016yi4c331l4iw1ymsa";
};
in
{
home.pointerCursor = {
x11.enable = true;
package = pkgs.capitaine-cursors;
name = "capitaine-cursors";
};
# Install themes
home.packages = with pkgs; [
ayu-theme-gtk
dracula-theme
capitaine-cursors
paper-icon-theme
papirus-icon-theme
libsForQt5.qtstyleplugin-kvantum
qt5ct
gtk-engine-murrine
gtk_engines
maim
kitty
libreoffice
inotify-tools
];
xresources.properties = {
"*.foreground" = "#95E6CB";
"*.background" = "#1F2430";
"*.cursorColor" = "#BAE67E";
# Black
"*.color0" = "#1F2430";
"*.color8" = "#F28779";
# Red
"*.color1" = "#A6CC70";
"*.color9" = "#FFCC66";
# Green
"*.color2" = "#5CCFE6";
"*.color10" = "#F29E74";
# Yellow
"*.color3" = "#77A8D9";
"*.color11" = "#5C6773";
# Blue
"*.color4" = "#707A8C";
"*.color12" = "#F27983";
# Magenta
"*.color5" = "#BAE67E";
"*.color13" = "#FFD580";
# Cyan
"*.color6" = "#73D0FF";
"*.color14" = "#FFA759";
# White
"*.color7" = "#95E6CB";
"*.color15" = "#CBCCC6";
# Bold, Italic, Underline
"*.colorBD" = "#e6e1cf";
};
# Move required config files around
xdg.enable = true; # This doesn't seem to do anything so we have below
xdg.configHome = "/home/anish/.config"; # TODO bad hardcode
xdg.configFile = {
"Kvantum/Dracula/Dracula.kvconfig".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.kvconfig";
"Kvantum/Dracula/Dracula.svg".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.svg";
"Kvantum/kvantum.kvconfig".text = "[General]\ntheme=Dracula";
};
home.file = {
".config/bspwm/rc.d/polybar".source = ./run.sh;
".config/bspwm/bspwmrc".source = ./bspwmrc;
".config/sxhkdrc".source = ./sxhkdrc;
".config/rofi/theme" = {
source = ./rofi;
recursive = true;
};
".config/polybar" = {
source = ./polybar;
recursive = true;
};
".config/dunst/dunstrc".source = ./dunstrc;
".config/kitty/kitty.conf".source = ./kitty.conf;
".config/kitty/ayu.conf".source = ./ayu-kitty.conf;
".config/zathura/zathurarc".source = ./zathurarc;
".background-image".source = ./background.jpg;
# gtk3 theme
".config/gtk-3.0/settings.ini".text = ''
[Settings]
gtk-theme-name=Dracula
gtk-icon-theme-name=Paper
gtk-cursor-theme-name=Capitaine Cursors - White
gtk-fallback-icon-theme=gnome
gtk-application-prefer-dark-theme=true
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=none
'';
# GTK2 global theme (widget and icon theme)
".config/gtk-2.0/gtkrc".text = ''
gtk-theme-name=Ayu-Mirage
gtk-icon-theme-name=Capitaine Cursors - White
gtk-font-name="Sans 10"
'';
# TODO hardcoded
".local/bin/passmenu".source = ./bin/passmenu;
".local/bin/powermenu".source = ./bin/powermenu;
".local/bin/screenshot".source = ./bin/screenshot;
".local/bin/mpv-ify".source = ./bin/mpv-ify;
".config/eww/eww.yuck".source = ./eww/eww.yuck;
".config/eww/eww.scss".source = ./eww/eww.scss;
".config/eww/widgets.yuck".source = ./eww/widgets.yuck;
# ".local/bin/hotplug-monitor.sh".source = ./bin/hotplug-monitor.sh;
};
qt = {
enable = true;
platformTheme = "gtk";
style = { name = "qt5ct-style"; };
};
# Compositor
services.picom = {
enable = true;
fade = true;
fadeDelta = 1;
fadeSteps = [ "0.01" "0.022" ];
shadow = true;
shadowOffsets = [ (-10) (-10) ];
shadowOpacity = "0.22";
# activeOpacity = "1.00";
# inactiveOpacity = "0.92";
extraOptions = ''
shadow-radius = 12;
# blur-background = true;
# blur-background-frame = true;
# blur-background-fixed = true;
blur-kern = "7x7box";
blur-strength = 320;
corner-radius = 3
'';
};
programs.autorandr.enable = true;
services.udiskie.automount = true;
services.mpris-proxy.enable = true; # bluetooth media control
}
+49
View File
@@ -0,0 +1,49 @@
[global]
alignment = left
bounce_freq = 0
browser = firefox -new-tab
corner_radius = 2
dmenu = rofi -dmenu -p dunst:
follow = none
font = Fira Sans 11
format = "<b>%s</b>\n%b"
frame_color = "#1a1c25"
frame_width = 1
# geometry [{width}]x{height}][+/-{x}+/-{y}]
geometry = "440x15-26+26"
history_length = 20
horizontal_padding = 16
icon_position = right
idle_threshold = 120
ignore_newline = no
indicate_hidden = yes
line_height = 0
markup = full
max_icon_size = 64
monitor = 0
padding = 20
separator_color = auto
separator_height = 4
show_age_threshold = 60
show_indicators = yes
shrink = no
sort = yes
startup_notification = false
sticky_history = yes
transparency = 5
word_wrap = yes
[urgency_low]
background = "#1E2029"
foreground = "#bbc2cf"
timeout = 8
[urgency_normal]
background = "#2a2d39"
foreground = "#bbc2cf"
timeout = 14
[urgency_critical]
background = "#cc6666"
foreground = "#1E2029"
timeout = 0
+50
View File
@@ -0,0 +1,50 @@
* {
all: unset;
color: #cdd6f4;
}
/* Calendar */
.cal-box {
background-color: #181825;
border-radius: 8px;
font-family: JetBrainsMono Nerd Font;
font-size: 1.2em;
.cal-inner-box {
padding: 1rem 1rem .3rem 1rem;
.cal {
&.highlight {
padding: 10rem;
}
padding: .8rem .25rem 0rem;
margin-left: 10px;
}
}
}
calendar:selected {
color: #9ece6a;
}
calendar.header {
color: #ad8ee6;
font-weight: bold;
}
calendar.button {
color: #449dab;
}
calendar.highlight {
color: #7aa2f7;
font-weight: bold;
}
calendar:indeterminate {
color: #8C8C8C;
}
+13
View File
@@ -0,0 +1,13 @@
; includes:
;widgets
(include "widgets.yuck")
;; Calendar Windows ;;
(defwindow calendar
:geometry (geometry :x "-19px"
:y "50px"
:width "270px"
:height "60px"
:anchor "top right")
(cal))
+20
View File
@@ -0,0 +1,20 @@
; widgets
(defpoll time0 :interval "10s" "date '+%H':%M")
(defpoll date :interval "10s" "date '+%b %d'")
;; Calendar Widgets ;;
(defwidget cal []
(box :class "cal-box"
:orientation "v"
(box :class "cal-inner-box"
(calendar :class "cal"
:day calendar_day
:month calendar_month
:year calendar_year))))
(defpoll calendar_day :interval "10h"
"date '+%d'")
(defpoll calendar_month :interval "10h"
"calendar")
(defpoll calendar_year :interval "10h"
"date '+%Y'")
+7
View File
@@ -0,0 +1,7 @@
include ayu.conf
font_family Hermit
bold_font auto
italic_font auto
bold_italic_font auto
open_url_with default
mouse_map left click ungrabbed mouse_click_url_or_select
+385
View File
@@ -0,0 +1,385 @@
[colors]
black = ${xrdb:color0}
bblack = ${xrdb:color8}
red = ${xrdb:color1}
bred = ${xrdb:color9}
green = ${xrdb:color2}
bgreen = ${xrdb:color10}
yellow = ${xrdb:color3}
byellow = ${xrdb:color11}
blue = ${xrdb:color4}
bblue = ${xrdb:color12}
magenta = ${xrdb:color5}
bmagenta = ${xrdb:color13}
cyan = ${xrdb:color6}
bcyan = ${xrdb:color14}
white = ${xrdb:color7}
bwhite = ${xrdb:color15}
bg = ${xrdb:background}
fg = ${colors.magenta}
bg-alt = #1E2029
fg-alt = #373844
bg-dark = #181a23
alert = ${colors.yellow}
accent = #604c7e
[global/wm]
margin-top = 0
margin-bottom = 34
[bar/main]
monitor = ${env:MONITOR}
monitor-strict = true
enable-ipc = true
wm-restack = bspwm
# REQUIRED to move the window with hideit.sh
override-redirect = true
fixed-center = true
background = ${colors.bg}
foreground = ${colors.fg}
width = 100%
height = 34
offset-x = 0
offset-y = 0
# bottom = true
overline-size = 0
overline-color = #f00
underline-size = 0
underline-color = #00f
border-bottom-size = 0
border-top-size = 1
border-color = ${colors.bg-dark}
padding-left = 2
padding-right = 2
module-margin-left = 0
module-margin-right = 0
font-0 = "Fira Code:pixelsize=9;2"
font-1 = "Wuncon Siji:pixelsize=12;2"
font-2 = "Siji:pixelsize=10;2"
; modules-left = volume pad cpu memory pad pkg mail
modules-left = pulseaudio pad cpu memory pad fs
modules-center = bspwm
modules-right = syncthing redshift wlan pad network-up pad network-down pad battery pad date
;tray-position = center
;tray-padding = 2
;tray-transparent = true
;tray-background = #0063ff
[module/bspwm]
type = internal/bspwm
pin-workspaces = true
enable-click = true
# ws-icon-0 = 1;
# ws-icon-1 = 2;
# ws-icon-2 = 3;
# ws-icon-3 = 4;
# ws-icon-4 = 5;
# ws-icon-5 = 6;
ws-icon-default = 
format = <label-state> <label-mode>
label-padding = 1
label-focused = %icon%
label-focused-background = ${colors.bg-dark}
label-focused-foreground = ${colors.fg}
# label-focused-underline = ${colors.magenta}
; label-focused-foreground = ${xrdb:color2}
label-focused-padding = 1
label-occupied = %icon%
label-occupied-foreground = ${colors.accent}
label-occupied-padding = 1
; label-urgent = %icon%
label-urgent-foreground = ${colors.alert}
; label-urgent-background = ${colors.alert}
label-urgent-padding = 1
label-empty = %icon%
label-empty-foreground = ${colors.fg-alt}
label-empty-padding = 1
[module/date]
type = internal/date
interval = 5
label = %date% %time%
date = %A, %h %d
date-alt = %Y-%m-%d
time = %I:%M %p
time-alt = %H:%M:%S
format-prefix = ""
format-prefix-padding = 1
; format-prefix-background = ${colors.bg-alt}
format-prefix-foreground = ${colors.accent}
; format-underline = ${xrdb:color4}
[module/fs]
type = internal/fs
mount-0 = /
mount-1 = /mnt/projects ; for desktops
mount-2 = /home ; for laptop
interval = 30
; Available tags:
; <label-mounted> (default)
; <bar-free>
; <bar-used>
; <ramp-capacity>
format-mounted = "<bar-used>"
format-mounted-foreground = ${colors.accent}
; Available tokens:
; %mountpoint%
; %type%
; %fsname%
; %percentage_free%
; %percentage_used%
; %total%
; %free%
; %used%
; Default: %mountpoint% %percentage_free%%
; Available tags:
; <label-unmounted> (default)
format-unmounted =
label-unmounted =
label-unmounted-foreground = ${colors.fg-alt}
bar-used-indicator =
bar-used-width = 8
bar-used-foreground-0 = ${colors.fg}
bar-used-foreground-1 = ${colors.fg}
bar-used-foreground-2 = ${colors.yellow}
bar-used-foreground-3 = ${colors.alert}
bar-used-foreground-4 = ${colors.alert}
bar-used-fill = |
bar-used-empty = ¦
bar-used-empty-foreground = ${colors.fg-alt}
[module/xwindow]
type = internal/xwindow
label = %title:0:80:...%
label-padding-left = 2
; [module/mpd]
; type = internal/mpd
; host = /home/hlissner/.config/mpd/mpd.sock
;
; format-online = <label-song> <toggle>
; format-padding = 5
;
; label-song-maxlen = 45
; label-song-ellipsis = true
;
; icon-prev = 
; icon-seekb = 
; icon-stop = 
; icon-play = 
; icon-pause = 
; icon-next = 
; icon-seekf = 
;
; icon-random = 
; icon-repeat = 
;
; toggle-on-foreground = ${colors.fg}
; toggle-off-foreground = #66
[module/cpu]
type = internal/cpu
interval = 2
format = <bar-load>
format-prefix = ""
format-foreground = ${colors.accent}
; format-underline = #f90000
; label = %percentage%%
format-padding = 1
bar-load-indicator =
bar-load-width = 8
bar-load-foreground-0 = ${colors.fg}
bar-load-foreground-1 = ${colors.fg}
bar-load-foreground-2 = ${colors.yellow}
bar-load-foreground-3 = ${colors.alert}
bar-load-foreground-4 = ${colors.alert}
bar-load-fill = |
bar-load-empty = ¦
bar-load-empty-foreground = ${colors.fg-alt}
[module/memory]
type = internal/memory
interval = 3
format = <bar-used>
format-prefix = ""
format-prefix-foreground = ${colors.accent}
; format-underline = #4bffdc
; label = %percentage_used%%
format-padding-left = 1
; Only applies if <bar-used> is used
bar-used-indicator =
bar-used-width = 8
bar-used-foreground-0 = ${colors.fg}
bar-used-foreground-1 = ${colors.fg}
bar-used-foreground-2 = ${colors.yellow}
bar-used-foreground-3 = ${colors.alert}
bar-used-foreground-4 = ${colors.alert}
bar-used-fill = |
bar-used-empty = ¦
bar-used-empty-foreground = ${colors.fg-alt}
[module/wlan]
type = internal/network
interface = ${env:WLP:wlp3s0}
interval = 3.0
format-connected = <ramp-signal>
format-disconnected =
format-disconnected-foreground =
; label-connected =
; label-disconnected = !
; label-disconnected-foreground = ${colors.red}
ramp-signal-0 = 
ramp-signal-0-foreground = ${colors.yellow}
ramp-signal-1 = 
ramp-signal-1-foreground = ${colors.yellow}
ramp-signal-2 = 
ramp-signal-2-foreground = ${colors.yellow}
ramp-signal-3 = 
ramp-signal-3-foreground = ${colors.accent}
ramp-signal-4 = 
ramp-signal-4-foreground = ${colors.fg}
[module/network-up]
type = internal/network
interface = ${env:LAN:eno1}
interval = 4.0
label-connected = "%upspeed%"
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.accent}
format-connected-foreground = ${colors.fg}
format-connected-background =
format-connected-underline =
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.alert}
format-disconnected-foreground = ${colors.alert}
[module/network-down]
type = internal/network
interface = ${env:LAN:eno1}
interval = 4.0
label-connected = "%downspeed%"
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.accent}
format-connected-foreground = ${colors.fg}
format-connected-background =
format-connected-underline =
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.alert}
format-disconnected-foreground = ${colors.alert}
[module/pulseaudio]
type = internal/pulseaudio
; format-volume = <label-volume> <bar-volume>
format-volume = <ramp-volume> <bar-volume>
; label-volume = " "
label-volume-foreground = ${colors.accent}
; format-muted-prefix = " "
format-muted-foreground = ${colors.alert}
label-muted = 
bar-volume-width = 8
# bar-volume-foreground-0 = ${colors.magenta}
# bar-volume-foreground-1 = ${colors.magenta}
# bar-volume-foreground-2 = ${colors.magenta}
# bar-volume-foreground-3 = ${colors.magenta}
# bar-volume-foreground-4 = ${colors.magenta}
# bar-volume-foreground-5 = ${colors.magenta}
# bar-volume-foreground-6 = ${colors.magenta}
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 1
bar-volume-indicator-foreground = #ff
bar-volume-fill = ─
bar-volume-fill-font = 1
bar-volume-empty = ─
bar-volume-empty-font = 1
bar-volume-empty-foreground = ${colors.fg-alt}
; Only applies if <ramp-volume> is used
ramp-volume-0 = 
ramp-volume-1 = 
ramp-volume-2 = 
[module/battery]
type = internal/battery
battery = BAT2
adapter = ADP1
full-at = 98
format-charging = <animation-charging> <label-charging>
format-charging-underline = #ffb52a
format-discharging = <ramp-capacity> <label-discharging>
format-discharging-underline = ${self.format-charging-underline}
format-full-prefix = " "
format-full-prefix-foreground = ${colors.fg-alt}
format-full-underline = ${self.format-charging-underline}
ramp-capacity-0 = 
ramp-capacity-1 = 
ramp-capacity-2 = 
ramp-capacity-0-foreground = ${colors.red}
ramp-capacity-1-foreground = #575864
ramp-capacity-2-foreground = ${colors.fg-alt}
animation-charging-0 = 
animation-charging-1 = 
animation-charging-2 = 
animation-charging-framerate = 1000
animation-charging-foreground = ${colors.fg}
;=====================================================
; Custom scripts
;=====================================================
[module/pad]
type = custom/text
content = " "
content-foreground = ${colors.fg-alt}
[module/redshift]
type = custom/script
exec = ~/.config/polybar/modules/redshift
exec-if = pgrep -x redshift
interval = 60
format-padding = 1
[module/syncthing]
type = custom/script
exec = echo 1
exec-if = systemctl is-active syncthing
format = ""
format-foreground = ${colors.fg}
interval = 30
; vim:ft=dosini
+411
View File
@@ -0,0 +1,411 @@
[colors]
yellow = #ffd580
orange = #fe8019
blue = #73d0ff
green = #bae67e
red = #ff3333
bg = #1f2430
fg = #bfbab0
icons = #bae67e
cyan = #95e6cb
text = ${xrdb:color2}
unfocus = ${xrdb:color1}
accent = #604c7e
sky = #73d0ff
mauve = #bae67e
alert = ${colors.yellow}
bg-alt = #1E2029
fg-alt = #373844
bg-dark = #181a23
[bar/mybar]
; monitor = VGA-1
override-redirect = false
; Put the bar at the bottom of the screen
bottom = false
; Prefer fixed center position for the `modules-center` block
fixed-center = true
width = 100%
height = 34
offset-x =
offset-y =
; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
background = ${colors.bg}
; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023)
foreground = ${colors.fg}
line-size = 0
line-color = #fff
; Number of spaces to add at the beginning/end of the bar
; Individual side values can be defined using:
; padding-{left,right}
padding-right = 1
padding-left = 0
; Number of spaces to add before/after each module
; Individual side values can be defined using:
; module-margin-{left,right}
module-margin = 0
margin-bottom = 34
font-0 = "Iosevka Term:pixelsize=13;4"
font-1 = "Iosevka Term:pixelsize=6;1"
font-2 = "Fira Code:pixelsize=13;2"
font-3 = "Siji:pixelsize=8;2"
; Add module mpd for artist - title info
modules-left = bspwm sps volume
modules-center = title
modules-right = wireless-network sps battery sps memory sps cpu sps date
; The separator will be inserted between the output of each module
separator =
; This value is used to add extra spacing between elements
; @deprecated: This parameter will be removed in an upcoming version
spacing = 0
; Opacity value between 0.0 and 1.0 used on fade in/out
dim-value = 1.0
wm-name = bspwm
tray-position = right
; If true, the bar will not shift its
; contents when the tray changes
tray-detached = false
; Tray icon max size
tray-maxsize = 16
tray-background = ${colors.bg}
;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
wm-restack = bspwm
dpi-x = 133
dpi-y = 133
enable-ipc = false
; Fallback click handlers that will be called if
; there's no matching module handler found.
[module/bspwm]
type = internal/bspwm
pin-workspaces = true
enable-click = true
ws-icon-0 = 1;%{T1}%{T-}
ws-icon-1 = 2;%{T1}%{T-}
ws-icon-2 = 3;%{T1}%{T-}
ws-icon-3 = 4;%{T1}%{T-}
ws-icon-4 = 5;%{T1}%{T-}
ws-icon-default = 
; fuzzy-match = true
format = <label-state> <label-mode>
label-padding = 1
label-foreground = ${colors.green}
label-focused = %icon%
label-focused-background = ${colors.yellow}
label-focused-foreground = ${colors.bg}
# label-focused-underline = ${colors.magenta}
; label-focused-foreground = ${xrdb:color2}
label-focused-padding = 1
label-occupied = %icon%
label-occupied-foreground = ${colors.accent}
label-occupied-padding = 1
label-urgent = %icon%
label-urgent-foreground = ${colors.alert}
; label-urgent-background = ${colors.alert}
label-urgent-padding = 1
; label-urgent-font = 3
label-empty = %icon%
label-empty-foreground = ${colors.fg-alt}
label-empty-padding = 1
[module/date]
type = internal/date
; Seconds to sleep between updates
interval = 1.0
; See "http://en.cppreference.com/w/cpp/io/manip/put_time" for details on how to format the date string
; NOTE: if you want to use syntax tags here you need to use %%{...}
date = %{T1}%{T-}%{T2} %d/%a%{T-}
; Optional time format
time = %{T2} %H:%M%{T-}
; if `date-alt` or `time-alt` is defined, clicking
; the module will toggle between formats
date-alt = %{T1}%{T-}%{T2} %a, %d %b %y%{T-}
time-alt = %{T2} %H:%M:%S%{T-}
label = %date%%time%
label-font = 0
label-foreground = ${colors.green}
[module/wireless-network]
type = internal/network
interface = wlp3s0
label-connected = %essid%
label-connected-font = 2
format-connected = <ramp-signal><label-connected>
label-connected-foreground = #82b414
format-disconnected = <label-disconnected>
label-disconnected = "睊"
label-disconnected-foreground = #f92672
ramp-signal-foreground = #82b414
ramp-signal-0 = " "
ramp-signal-1 = " "
ramp-signal-2 = " "
ramp-signal-3 = " "
ramp-signal-4 = " "
ramp-signal-5 = " "
[module/cpu]
type = internal/cpu
; Seconds to sleep between updates
; Default: 1
interval = 0.5
label = %{T1}%{T-}%{T2} %percentage:2%%%{T-}
label-foreground = ${colors.cyan}
[module/memory]
type = internal/memory
; Seconds to sleep between updates
; Default: 1
interval = 0.5
format = <label>
; 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 = %{T1}%{T-}%{T2} %gb_used%%{T-}
label-foreground = ${colors.cyan}
[module/mpd]
type = internal/mpd
host = 0.0.0.0
port = 6600
interval = 2
format-online = <label-song>
format-online-background = ${colors.bg}
format-online-foreground = ${colors.yellow}
#format-online-padding = 20
label-song = %{T2}%artist% - %title%%{T-}
label-song-maxlen = 55
label-song-ellipsis = true
label-offline = "MPD is offline"
[module/mpd_i]
type = internal/mpd
interval = 2
format-online = <icon-prev> <toggle> <icon-next>
format-online-background = ${colors.bg}
format-online-foreground = ${colors.yellow}
#format-online-padding = 2
label-offline = "MPD is offline"
; Only applies if <icon-X> is used
icon-play = %{T1}奈%{T-}
icon-pause = %{T1}%{T-}
icon-stop = %{T1}%{T-}
icon-prev = %{T1}ﭣ%{T-}
icon-next = %{T1}ﭡ%{T-}
;An empty module used to add 1 unit spacings whenever needed
[module/sps]
type = custom/text
content = " "
content-padding = 0
[module/network]
type = internal/network
interface = wlp3s0
;enp0s29u1u2
interval = 1.0
label-connected = "%{T1}龍%{T-}%{T2} %downspeed% | %upspeed%%{T-}"
label-disconnected = "%{T2}0/0%{T-}"
label-connected-background = ${colors.bg}
label-connected-foreground = ${colors.blue}
label-disconnected-foreground = ${colors.red}
[module/title]
type = internal/xwindow
; Available tags:
; <label> (default)
format = <label>
format-background = ${colors.bg}
format-foreground = ${colors.green}
format-padding = 4
; Available tokens:
; %title%
; Default: %title%
label = "%{T1}类%{T-}%{T2} %title%%{T-}"
label-maxlen = 65
; Used instead of label when there is no window title
; Available tokens:
; None
label-empty =%{T2}Empty%{T-}
label-empty-foreground = #707880
[module/volume]
type = internal/pulseaudio
use-ui-max = false
interval = 5
format-volume = <ramp-volume><bar-volume>
format-muted = <label-muted>
format-muted-prefix = "  "
format-muted-prefix-font = 2
format-muted-prefix-foreground = ${colors.mauve}
label-volume = "%percentage%% "
label-muted = "Mute"
label-volume-foreground = ${colors.mauve}
label-muted-foreground = ${colors.mauve}
bar-volume-width = 8
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-indicator-foreground = ${colors.mauve}
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-fill-foreground = ${colors.mauve}
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.fg-alt}
ramp-volume-0 = "  "
ramp-volume-1 = "  "
ramp-volume-2 = "  "
ramp-volume-3 = "  "
ramp-volume-4 = "  "
ramp-volume-5 = "  "
ramp-volume-6 = "  "
ramp-volume-7 = "  "
ramp-volume-8 = "  "
ramp-volume-9 = "  "
ramp-volume-font = 1
ramp-volume-foreground = ${colors.mauve}
ramp-headphones-0 = 
ramp-headphones-1 = 
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/battery]
type = internal/battery
full-at = 99
adapter = ACAD
battery = BAT0
poll-interval = 2
time-format = %H:%M
format-charging = <animation-charging><label-charging>
format-charging-prefix =
format-discharging = <ramp-capacity><label-discharging>
format-full = <label-full>
format-full-prefix = " "
format-full-prefix-font = 1
format-full-prefix-foreground = ${colors.sky}
label-charging = "%percentage%% "
label-discharging = "%percentage%% "
label-full = "%percentage%% "
label-charging-foreground = ${colors.sky}
label-discharging-foreground = ${colors.sky}
label-charging-font = 2
label-discharging-font = 2
label-full-foreground = ${colors.sky}
label-full-font = 2
ramp-capacity-0 = " "
ramp-capacity-1 = " "
ramp-capacity-2 = " "
ramp-capacity-3 = " "
ramp-capacity-4 = " "
ramp-capacity-font = 1
ramp-capacity-foreground = ${colors.sky}
animation-charging-0 = " "
animation-charging-1 = " "
animation-charging-2 = " "
animation-charging-3 = " "
animation-charging-4 = " "
animation-charging-font = 1
animation-charging-foreground = ${colors.sky}
animation-charging-framerate = 750
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
+387
View File
@@ -0,0 +1,387 @@
[colors]
black = ${xrdb:color0}
bblack = ${xrdb:color8}
red = ${xrdb:color1}
bred = ${xrdb:color9}
green = ${xrdb:color2}
bgreen = ${xrdb:color10}
yellow = ${xrdb:color3}
byellow = ${xrdb:color11}
blue = ${xrdb:color4}
bblue = ${xrdb:color12}
magenta = ${xrdb:color5}
bmagenta = ${xrdb:color13}
cyan = ${xrdb:color6}
bcyan = ${xrdb:color14}
white = ${xrdb:color7}
bwhite = ${xrdb:color15}
bg = ${xrdb:background}
fg = ${colors.magenta}
bg-alt = #1E2029
fg-alt = #373844
bg-dark = #181a23
alert = ${colors.yellow}
accent = #604c7e
[global/wm]
margin-top = 0
margin-bottom = 34
[bar/main]
monitor = ${env:MONITOR}
monitor-strict = true
enable-ipc = true
wm-restack = bspwm
# REQUIRED to move the window with hideit.sh
override-redirect = true
fixed-center = true
background = ${colors.bg}
foreground = ${colors.fg}
width = 100%
height = 34
offset-x = 0
offset-y = 0
# bottom = true
overline-size = 0
overline-color = #f00
underline-size = 0
underline-color = #00f
border-bottom-size = 0
border-top-size = 1
border-color = ${colors.bg-dark}
padding-left = 2
padding-right = 2
module-margin-left = 0
module-margin-right = 0
font-0 = "Fira Code:pixelsize=13;2"
font-1 = "Wuncon Siji:pixelsize=16;2"
font-2 = "Siji:pixelsize=10;2"
; modules-left = volume pad cpu memory pad pkg mail
modules-left = pulseaudio pad cpu memory pad fs
modules-center = bspwm
modules-right = syncthing redshift wlan pad network-up pad network-down pad battery pad date
;tray-position = center
;tray-padding = 2
;tray-transparent = true
;tray-background = #0063ff
[module/bspwm]
type = internal/bspwm
pin-workspaces = true
enable-click = true
# ws-icon-0 = 1;
# ws-icon-1 = 2;
# ws-icon-2 = 3;
# ws-icon-3 = 4;
# ws-icon-4 = 5;
# ws-icon-5 = 6;
ws-icon-default = 
fuzzy-match = true
format = <label-state> <label-mode>
label-padding = 1
label-focused = %icon%
label-focused-background = ${colors.bg-dark}
label-focused-foreground = ${colors.fg}
# label-focused-underline = ${colors.magenta}
; label-focused-foreground = ${xrdb:color2}
label-focused-padding = 1
label-occupied = %icon%
label-occupied-foreground = ${colors.accent}
label-occupied-padding = 1
; label-urgent = %icon%
label-urgent-foreground = ${colors.alert}
; label-urgent-background = ${colors.alert}
label-urgent-padding = 1
label-empty = %icon%
label-empty-foreground = ${colors.fg-alt}
label-empty-padding = 1
[module/date]
type = internal/date
interval = 5
label = %date% %time%
date = %A, %h %d
date-alt = %Y-%m-%d
time = %I:%M %p
time-alt = %H:%M:%S
format-prefix = ""
format-prefix-padding = 1
; format-prefix-background = ${colors.bg-alt}
format-prefix-foreground = ${colors.accent}
; format-underline = ${xrdb:color4}
[module/fs]
type = internal/fs
mount-0 = /
# mount-1 = /mnt/projects ; for desktops
mount-2 = /home/anish
interval = 30
; Available tags:
; <label-mounted> (default)
; <bar-free>
; <bar-used>
; <ramp-capacity>
format-mounted = "<bar-used>"
format-mounted-foreground = ${colors.accent}
; Available tokens:
; %mountpoint%
; %type%
; %fsname%
; %percentage_free%
; %percentage_used%
; %total%
; %free%
; %used%
; Default: %mountpoint% %percentage_free%%
; Available tags:
; <label-unmounted> (default)
format-unmounted =
label-unmounted =
label-unmounted-foreground = ${colors.fg-alt}
bar-used-indicator =
bar-used-width = 8
bar-used-foreground-0 = ${colors.fg}
bar-used-foreground-1 = ${colors.fg}
bar-used-foreground-2 = ${colors.yellow}
bar-used-foreground-3 = ${colors.alert}
bar-used-foreground-4 = ${colors.alert}
bar-used-fill = |
bar-used-empty = ¦
bar-used-empty-foreground = ${colors.fg-alt}
[module/xwindow]
type = internal/xwindow
label = %title:0:80:...%
label-padding-left = 2
; [module/mpd]
; type = internal/mpd
; host = /home/hlissner/.config/mpd/mpd.sock
;
; format-online = <label-song> <toggle>
; format-padding = 5
;
; label-song-maxlen = 45
; label-song-ellipsis = true
;
; icon-prev = 
; icon-seekb = 
; icon-stop = 
; icon-play = 
; icon-pause = 
; icon-next = 
; icon-seekf = 
;
; icon-random = 
; icon-repeat = 
;
; toggle-on-foreground = ${colors.fg}
; toggle-off-foreground = #66
[module/cpu]
type = internal/cpu
interval = 2
format = <bar-load>
format-prefix = ""
format-foreground = ${colors.accent}
; format-underline = #f90000
; label = %percentage%%
format-padding = 1
bar-load-indicator =
bar-load-width = 8
bar-load-foreground-0 = ${colors.fg}
bar-load-foreground-1 = ${colors.fg}
bar-load-foreground-2 = ${colors.yellow}
bar-load-foreground-3 = ${colors.alert}
bar-load-foreground-4 = ${colors.alert}
bar-load-fill = |
bar-load-empty = ¦
bar-load-empty-foreground = ${colors.fg-alt}
[module/memory]
type = internal/memory
interval = 3
format = <bar-used>
format-prefix = ""
format-prefix-foreground = ${colors.accent}
; format-underline = #4bffdc
; label = %percentage_used%%
format-padding-left = 1
; Only applies if <bar-used> is used
bar-used-indicator =
bar-used-width = 8
bar-used-foreground-0 = ${colors.fg}
bar-used-foreground-1 = ${colors.fg}
bar-used-foreground-2 = ${colors.yellow}
bar-used-foreground-3 = ${colors.alert}
bar-used-foreground-4 = ${colors.alert}
bar-used-fill = |
bar-used-empty = ¦
bar-used-empty-foreground = ${colors.fg-alt}
[module/wlan]
type = internal/network
interface = ${env:WLP:wlp3s0}
interval = 3.0
format-connected = <ramp-signal>
format-disconnected =
format-disconnected-foreground =
; label-connected =
; label-disconnected = !
; label-disconnected-foreground = ${colors.red}
ramp-signal-0 = 
ramp-signal-0-foreground = ${colors.yellow}
ramp-signal-1 = 
ramp-signal-1-foreground = ${colors.yellow}
ramp-signal-2 = 
ramp-signal-2-foreground = ${colors.yellow}
ramp-signal-3 = 
ramp-signal-3-foreground = ${colors.accent}
ramp-signal-4 = 
ramp-signal-4-foreground = ${colors.fg}
[module/network-up]
type = internal/network
interface = ${env:LAN:eno1}
interval = 4.0
label-connected = "%upspeed%"
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.accent}
format-connected-foreground = ${colors.fg}
format-connected-background =
format-connected-underline =
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.alert}
format-disconnected-foreground = ${colors.alert}
[module/network-down]
type = internal/network
interface = ${env:LAN:eno1}
interval = 4.0
label-connected = "%downspeed%"
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.accent}
format-connected-foreground = ${colors.fg}
format-connected-background =
format-connected-underline =
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.alert}
format-disconnected-foreground = ${colors.alert}
[module/pulseaudio]
type = internal/pulseaudio
; format-volume = <label-volume> <bar-volume>
format-volume = <ramp-volume> <bar-volume>
; label-volume = " "
label-volume-foreground = ${colors.accent}
; format-muted-prefix = " "
format-muted-foreground = ${colors.alert}
label-muted = 
bar-volume-width = 8
# bar-volume-foreground-0 = ${colors.magenta}
# bar-volume-foreground-1 = ${colors.magenta}
# bar-volume-foreground-2 = ${colors.magenta}
# bar-volume-foreground-3 = ${colors.magenta}
# bar-volume-foreground-4 = ${colors.magenta}
# bar-volume-foreground-5 = ${colors.magenta}
# bar-volume-foreground-6 = ${colors.magenta}
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 1
bar-volume-indicator-foreground = #ff
bar-volume-fill = ─
bar-volume-fill-font = 1
bar-volume-empty = ─
bar-volume-empty-font = 1
bar-volume-empty-foreground = ${colors.fg-alt}
; Only applies if <ramp-volume> is used
ramp-volume-0 = 
ramp-volume-1 = 
ramp-volume-2 = 
[module/battery]
type = internal/battery
battery = BAT0
adapter = ADP1
full-at = 98
format-charging = <animation-charging> <label-charging>
format-charging-underline = #ffb52a
format-discharging = <ramp-capacity> <label-discharging>
format-discharging-underline = ${self.format-charging-underline}
format-full-prefix = " "
format-full-prefix-foreground = ${colors.fg-alt}
format-full-underline = ${self.format-charging-underline}
ramp-capacity-0 = 
ramp-capacity-1 = 
ramp-capacity-2 = 
ramp-capacity-0-foreground = ${colors.red}
ramp-capacity-1-foreground = #575864
ramp-capacity-2-foreground = ${colors.fg-alt}
animation-charging-0 = 
animation-charging-1 = 
animation-charging-2 = 
animation-charging-framerate = 1000
animation-charging-foreground = ${colors.fg}
;=====================================================
; Custom scripts
;=====================================================
[module/pad]
type = custom/text
content = " "
content-foreground = ${colors.fg-alt}
[module/redshift]
type = custom/script
exec = ~/.config/polybar/modules/redshift
exec-if = pgrep -x redshift
interval = 60
format-padding = 1
[module/syncthing]
type = custom/script
exec = echo 1
exec-if = systemctl is-active syncthing
format = ""
format-foreground = ${colors.fg}
interval = 30
; vim:ft=dosini
+21
View File
@@ -0,0 +1,21 @@
#!/usr/bin/env bash
# Specifying the icon(s) in the script
# This allows us to change its appearance conditionally
pgrep -x redshift &> /dev/null
if [[ $? -eq 0 ]]; then
temp=$(redshift -p 2>/dev/null | grep temp | cut -d' ' -f3)
temp=${temp//K/}
fi
icon=""
# OPTIONAL: Append ' ${temp}K' after $icon
if [[ -z $temp ]]; then
echo "%{F#65737E}$icon" # Greyed out (not running)
elif [[ $temp -ge 5000 ]]; then
echo "%{F#8FA1B3}$icon" # Blue
elif [[ $temp -ge 4000 ]]; then
echo "%{F#EBCB8B}$icon" # Yellow
else
echo "%{F#D08770}$icon" # Orange
fi
+7
View File
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
pkill -u $UID -x polybar
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
polybar main >$XDG_DATA_HOME/polybar.log 2>&1 &
echo 'Polybar launched...'
+10
View File
@@ -0,0 +1,10 @@
/* -*- mode: css; -*- */
@import "config.rasi"
textbox-icon {
str: "  ";
}
prompt {
enabled: false;
}
@@ -0,0 +1,21 @@
/* -*- mode: css; -*- */
@import "config.rasi"
window {
y-offset: 0;
children: [ listview ];
width: 500px;
}
listview {
scrollbar: false;
}
element {
padding: 30px;
background-color: @bg-light;
}
element.selected {
background-color: @accent;
text-color: @bg;
}
@@ -0,0 +1,14 @@
/* -*- mode: css; -*- */
@import "config.rasi"
listview {
columns: 1;
}
textbox-icon {
str: "  ";
}
prompt {
enabled: false;
}
+142
View File
@@ -0,0 +1,142 @@
/* -*- mode: css; -*- */
configuration {
icon-theme: "Paper";
cycle: true;
disable-history: false;
monitor: "-4";
/* Vim-esque C-j/C-k as up/down in rofi */
kb-accept-entry: "Return,Control+m,KP_Enter";
kb-row-down: "Down,Control+n,Control+j";
kb-remove-to-eol: "";
kb-row-up: "Up,Control+p,Control+k";
}
* {
bg-light: #1c1c1c;
bg-focus: #282a36;
bg-dark: #181a23;
fg-list: #bbc2cf;
on: #8BD49C;
off: #cc6666;
accent: #ffcc66;
bg: #1f2430f3;
separatorcolor: transparent;
fg: #bfbab0;
selectioncolor: #fafafa;
text-color: @foregroundcolor;
magenta: #bd93f9;
blue: #61bfff;
text-font: "Fira Sans 15";
text-mono-font: "Fira Code 13";
/* icon-font: "Hurmit Nerd Font Mono 26"; */
icon-font: "FontAwesome 20";
background-color: transparent;
text-color: @fg-list;
font: @text-font;
border-color: @bg-dark;
}
/**** Layout ****/
window {
width: 1000px;
y-offset: -150px;
anchor: north;
location: center;
border: 1px;
border-radius: 6px 6px 0 0;
children: [ inputbar, listview ];
}
listview {
lines: 12;
fixed-height: false;
/* reverse: true; */
columns: 2;
scrollbar: true;
spacing: 1px;
/* Remove strange gap between listview and inputbar */
margin: -2px 0 0;
}
/*
TODO Not supported in stable branch of rofi
@media only (max-height: 1080px) {
window {
y-offset: -30%;
}
listview {
lines: 14;
}
}
*/
scrollbar {
handle-width: 1px;
}
inputbar {
children: [ textbox-icon, prompt, entry ];
border: 0 0 0;
}
textbox-icon, prompt {
padding: 11px;
expand: false;
border: 0 1px 0 0;
margin: 0 -2px 0 0;
}
textbox-icon {
padding: 7px 4px 0;
}
entry, element {
padding: 10px 13px;
}
textbox {
padding: 24px;
margin: 20px;
}
/**** Looks ****/
scrollbar {
background-color: @bg-dark;
handle-color: @accent;
border-color: @bg-dark;
}
listview, inputbar {
background-color: @bg;
}
textbox-icon, prompt, entry {
text-color: @accent;
}
prompt, entry {
background-color: @bg;
}
textbox-icon, prompt {
background-color: #2f313d;
}
prompt {
background-color: @bg-focus;
}
textbox-icon {
font: @icon-font;
}
entry {
font: @text-font-mono;
text-color: @fg;
}
element {
background-color: @bg;
text-color: @fg;
}
element selected {
background-color: @bg-dark;
text-color: @accent;
}
@@ -0,0 +1,15 @@
/* -*- mode: css; -*- */
@import "config.rasi"
listview {
columns: 4;
}
textbox-icon {
str: "🎑";
}
prompt {
enabled: false;
}
+11
View File
@@ -0,0 +1,11 @@
/* -*- mode: css; -*- */
@import "config.rasi"
textbox-icon {
str: "  ";
}
prompt {
enabled: true;
}
+43
View File
@@ -0,0 +1,43 @@
@import "config.rasi"
* {
icon-font : "Iosevka Nerd Font Mono 24";
text-color : @fg;
background-color : @bg;
margin : 0px;
padding : 0px;
spacing : 0px;
}
window {
location : north;
children : [mainbox];
}
mainbox {
children : [listview];
}
listview {
columns : 8;
lines : 1;
}
element {
children : [element-text];
}
element-text {
font : @icon-font;
cursor : pointer;
padding : 4px;
vertical-align : 0.5;
horizontal-align : 0.5;
}
element-text selected {
text-color : @bg;
background-color : @accent;
}
+10
View File
@@ -0,0 +1,10 @@
/* -*- mode: css; -*- */
@import "config.rasi"
listview {
columns: 1;
}
textbox-icon {
str: "  ";
}
@@ -0,0 +1,23 @@
/** -*- mode: css; -*-
* This theme is intended for a 5 items wide menu on a 1920x1080 pixels resolution.
* You may have to tweak values such as the window padding if you have a different resolution.
*/
@import "appmenu.rasi"
window {
children: [ listview ];
width: 500px;
}
listview {
scrollbar: false;
}
element {
padding: 30px;
background-color: @bg;
}
element.selected {
background-color: @off;
text-color: @bg;
}
@@ -0,0 +1,22 @@
@import "appmenu.rasi"
window {
children: [ listview ];
width: 264px;
y-offset: -540px;
border-radius: 5px 5px 5px 5px;
}
listview {
scrollbar: false;
lines: 1;
columns: 6;
}
element {
background-color: @bg;
}
element.selected {
background-color: @off;
text-color: @bg;
}
@@ -0,0 +1,27 @@
/* -*- mode: css; -*- */
@import "config.rasi"
listview {
columns: 1;
}
inputbar {
width: 1100px;
}
textbox-icon {
str: "  ";
}
prompt {
enabled: false;
}
/**
* Elements are tab-delimited, which look weird in the default variable-pitch
* font, so use a monospace one.
*/
element {
font: "Fira Code 12";
}
+6
View File
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
pkill -u $UID -x polybar
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
polybar mybar >$XDG_DATA_HOME/polybar.log 2>&1 &
+131
View File
@@ -0,0 +1,131 @@
super + alt + Escape
bspc quit
super + {_,shift + }q
bspc node -{c,k}
super + t
bspc desktop -l next
super + apostrophe
bspc window -s last
# Attach to a detached session. If none is available create a new one, rather
# than attach to one that is already attached to elsewhere.
super + Return
kitty
ctrl + super + Return
xst -e bash -c "(tmux ls | grep -qEv 'attached|scratch' && tmux at) || tmux"
# Open a disposable, floating terminal window, for quick shell commands.
super + grave
scratch
# Open a disposable scratch buffer in a floating Emacs window, to run arbitrary
# code or quickly note something down.
super + shift + grave
emacsclient --eval "(open-scratch-frame)"
super + space
rofi -show drun -modi drun,run -show-icons -theme theme/appmenu.rasi
super + Tab
rofi -show window -show-icons -theme theme/windowmenu.rasi
super + e
rofimoji --rofi-args "-theme theme/emojimenu.rasi" --skin-tone moderate --action copy
super + p
passmenu
super + s
powermenu
super + o
screenshot
super + Escape
pkill -USR1 -x sxhkd
super + n
xkblayout-state set +1
#
##
## Toggle floating/fullscreen
super + {_,ctrl + }f
bspc node -t ~{floating,fullscreen}
super + {_,shift + }{h,j,k,l}
bspc node -{f,s} {west,south,north,east}
super + ctrl + {h,j,k,l}
bspc node -p {west,south,north,east}
## Resize by preselection
super + alt + {1-9}
$DOTFLES/bin/bspwm/presel 0.{1-9}
super + alt + {h,j,k,l}
bspc node -p {west,south,north,east}
super + alt + Return
$DOTFILES/bin/bspwm/subtract-presel
super + alt + Delete
bspc node -p cancel
super + {_,shift +}{1-9,0}
bspc {desktop -f,node -d} {1-9,10};
# expand a window by moving one of its side outward
super + {Left,Down,Up,Right}
bspc node -z {left -40 0,bottom 0 40,top 0 -40,right 40 0}
# contract a window by moving one of its side inward
super + ctrl + {Left,Down,Up,Right}
bspc node -z {right -40 0,top 0 40,bottom 0 -40,left 40 0}
# move a floating window
super + shift + {Left,Down,Up,Right}
bspc node -v {-40 0,0 40,0 -40,40 0}
#
## Media keys
super + u
mpv-ify
# screenshot region
Print
scrcap
# screencast region to mp4
super + Print
scrrec -s ~/recordings/$(date +%F-%T).mp4
# screencast region to gif
super + ctrl + Print
scrrec -s ~/recordings/$(date +%F-%T).gif
XF86MonBrightnessUp
light -A 5
XF86MonBrightnessDown
light -U 5
XF86AudioMute
amixer -q set Master toggle
XF86AudioLowerVolume
amixer -q set Master 10%- unmute
XF86AudioRaiseVolume
amixer -q set Master 10%+ unmute
XF86Audio{Play,Pause}
spt-send toggle
XF86AudioNext
spt-send next
XF86AudioPrev
spt-send prev
# X86Search
+50
View File
@@ -0,0 +1,50 @@
# xdg.nix
#
# Set up and enforce XDG compliance. Other modules will take care of their own,
# but this takes care of the general cases.
{ config, home-manager, ... }:
{
### A tidy $HOME is a tidy mind
home-manager.users.anish.xdg.enable = true;
environment = {
sessionVariables = {
# These are the defaults, and xdg.enable does set them, but due to load
# order, they're not set before environment.variables are set, which could
# cause race conditions.
XDG_CACHE_HOME = "$HOME/.cache";
XDG_CONFIG_HOME = "$HOME/.config";
XDG_DATA_HOME = "$HOME/.local/share";
XDG_BIN_HOME = "$HOME/.local/bin";
};
variables = {
# Conform more programs to XDG conventions. The rest are handled by their
# respective modules.
__GL_SHADER_DISK_CACHE_PATH = "$XDG_CACHE_HOME/nv";
ASPELL_CONF = ''
per-conf $XDG_CONFIG_HOME/aspell/aspell.conf;
personal $XDG_CONFIG_HOME/aspell/en_US.pws;
repl $XDG_CONFIG_HOME/aspell/en.prepl;
'';
#CUDA_CACHE_PATH = "$XDG_CACHE_HOME/nv";
HISTFILE = "$XDG_DATA_HOME/bash/history";
INPUTRC = "$XDG_CONFIG_HOME/readline/inputrc";
LESSHISTFILE = "$XDG_CACHE_HOME/lesshst";
WGETRC = "$XDG_CONFIG_HOME/wgetrc";
# Tools I don't use
# SUBVERSION_HOME = "$XDG_CONFIG_HOME/subversion";
# BZRPATH = "$XDG_CONFIG_HOME/bazaar";
# BZR_PLUGIN_PATH = "$XDG_DATA_HOME/bazaar";
# BZR_HOME = "$XDG_CACHE_HOME/bazaar";
# ICEAUTHORITY = "$XDG_CACHE_HOME/ICEauthority";
};
# Move ~/.Xauthority out of $HOME (setting XAUTHORITY early isn't enough)
#extraInit = ''
# export XAUTHORITY=/tmp/Xauthority
# [ -e ~/.Xauthority ] && mv -f ~/.Xauthority "$XAUTHORITY"
#'';
};
}
+41
View File
@@ -0,0 +1,41 @@
set notification-error-bg "#1f2430"
set notification-error-fg "#fb4934"
set notification-warning-bg "#1f2430"
set notification-warning-fg "#fabd2f"
set notification-bg "#1f2430"
set notification-fg "#b8bb26"
set completion-bg "#1f2430"
set completion-fg "#bfbab0"
set completion-group-bg "#3c3836"
set completion-group-fg "#928374"
set completion-highlight-bg "#83a598"
set completion-highlight-fg "#504945"
# Define the color in index mode
set index-bg "#1f2430"
set index-fg "#bfbab0"
set index-active-bg "#83a598"
set index-active-fg "#504945"
set inputbar-bg "#1f2430"
set inputbar-fg "#bfbab0"
set statusbar-bg "#1f2430"
set statusbar-fg "#bfbab0"
set highlight-color "#fabd2f"
set highlight-active-color "#fe8019"
set default-bg "#1f2430"
set default-fg "#bfbab0"
set render-loading true
set render-loading-bg "#1f2430"
set render-loading-fg "#bfbab0"
# Recolor book content's color
set recolor-lightcolor "#1f2430"
set recolor-darkcolor "#bfbab0"
set recolor "true"
# set recolor-keephue true # keep original color