├── dunst
├── image.sh
├── icons
│ ├── volume-low.svg
│ ├── volume-medium.svg
│ ├── volume-high.svg
│ └── volume-muted.svg
├── colors
│ ├── dracula.conf
│ ├── catppuccin-frappe.conf
│ ├── catppuccin-latte.conf
│ ├── catppuccin-mocha.conf
│ └── catppuccin-macchiato.conf
└── dunstrc
├── polybar
├── bar
│ ├── color.ini
│ ├── colors.ini
│ ├── config.ini
│ ├── .config.bak.ini
│ └── modules.ini
├── scripts
│ ├── monitor-swap.sh
│ ├── spotify.sh
│ ├── calendar.sh
│ ├── network.sh
│ ├── youtube.sh
│ ├── tray.sh
│ ├── multi-screens.sh
│ ├── yt-lock.sh
│ ├── test-fonts.pl
│ ├── music-player-switch.sh
│ ├── jgmenu.sh
│ ├── youtube-lock.sh
│ └── module-playerctl.sh
├── launch.sh
└── tray
│ └── config.ini
├── scripts
├── calc
├── current-window.sh
├── bwunlock
├── mouse-loc.sh
├── bspwm
│ └── layoutswitch.sh
├── polybar
│ ├── spotifyd
│ └── spotify-playerctl.sh
├── wynnpack
├── wallpaper.sh
├── assets
│ └── variety.svg
├── pipewire-simple.sh
├── screenshot-wayland
├── catfetch
├── unzip
├── wallpaper-set
├── bloons
├── git-prep.sh
├── volume
└── screenshot
├── kitty
├── floating.conf
├── kitty.conf.bak
├── kitty.conf
├── dracula.colors.txt
├── Catppuccin.conf
├── current-theme.conf
└── Catppuccin-mocha.conf
├── neofetch
├── logo1.png
├── .directory
├── config3.conf
├── config1.conf
├── config2.conf
└── config.conf
├── bspwm
├── restart_icon.png
├── scripts
│ ├── floating.sh
│ ├── fullscreen.sh
│ ├── borders.sh
│ ├── spotify.sh
│ ├── desktop-switch-monitor.sh
│ ├── afk.sh
│ └── jgmenu.sh
├── keyboard-colors
├── sxhkdrc
└── bspwmrc
├── fonts
└── icomoon_feather.ttf
├── hypr
├── scripts
│ ├── color_picker.sh
│ └── toggle_blur.sh
└── hyprland.conf
├── rofi-own
├── scripts
│ ├── cliphist.sh
│ ├── pmc.sh
│ ├── usedram
│ ├── usedcpu
│ ├── powermenu.sh
│ ├── quicklinks.sh
│ ├── powermenu-2.sh
│ └── apps.sh
├── colors
│ └── colors.rasi
├── clipmenu.rasi
├── pmc.rasi
├── wallpaper.rasi
├── catppuccin.rasi
├── clipmenu-2.rasi
├── apps.rasi
├── style.rasi
├── launcher.rasi
├── powermenu.rasi
└── powermenu-2.rasi
├── zsh
├── theme.zsh
├── aliases.zsh
├── zshrc
└── functions.zsh
├── waybar
├── modules
│ ├── weather.sh
│ ├── sysmenu.sh
│ ├── layoutswitch.sh
│ ├── player-swap.sh
│ ├── windowbutton.sh
│ ├── spotify-buttons.sh
│ ├── storage.sh
│ ├── spotify.sh
│ ├── mail.py
│ └── player.py
├── waybar.sh
├── mocha.css
├── style.css
└── config
├── starship.toml
├── README.md
├── picom
└── config.conf
└── stalonetrayrc
/dunst/image.sh:
--------------------------------------------------------------------------------
1 | feh $dir/$file
--------------------------------------------------------------------------------
/polybar/bar/color.ini:
--------------------------------------------------------------------------------
1 | volume = #91d7e3
2 |
--------------------------------------------------------------------------------
/scripts/calc:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | echo $((${1}${2}${3}))
--------------------------------------------------------------------------------
/kitty/floating.conf:
--------------------------------------------------------------------------------
1 | include kitty.conf
2 | map escape close_window
--------------------------------------------------------------------------------
/scripts/current-window.sh:
--------------------------------------------------------------------------------
1 | xdotool getwindowname $(xdotool getactivewindow)
--------------------------------------------------------------------------------
/neofetch/logo1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeorgeBnrs/dotfiles/HEAD/neofetch/logo1.png
--------------------------------------------------------------------------------
/bspwm/restart_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeorgeBnrs/dotfiles/HEAD/bspwm/restart_icon.png
--------------------------------------------------------------------------------
/fonts/icomoon_feather.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GeorgeBnrs/dotfiles/HEAD/fonts/icomoon_feather.ttf
--------------------------------------------------------------------------------
/hypr/scripts/color_picker.sh:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | color=$(hyprpicker)
4 | wl-copy $color
5 | dunstify $color
--------------------------------------------------------------------------------
/neofetch/.directory:
--------------------------------------------------------------------------------
1 | [Dolphin]
2 | Timestamp=2022,1,31,20,52,31.432
3 | Version=4
4 | ViewMode=2
5 |
6 | [Settings]
7 | HiddenFilesShown=true
8 |
--------------------------------------------------------------------------------
/bspwm/scripts/floating.sh:
--------------------------------------------------------------------------------
1 | if [[ -n $(bspc query -N -n focused.floating) ]]
2 | then
3 | bspc node -t tiled
4 | else
5 | bspc node -t floating
6 | fi
--------------------------------------------------------------------------------
/rofi-own/scripts/cliphist.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | if [ -z "$1" ]; then
4 | cliphist list
5 | else
6 | cliphist decode <<<"$1" | wl-copy
7 | fi
--------------------------------------------------------------------------------
/bspwm/scripts/fullscreen.sh:
--------------------------------------------------------------------------------
1 | if [[ -n $(bspc query -N -n focused.fullscreen) ]]
2 | then
3 | bspc node -t tiled
4 | else
5 | bspc node -t fullscreen
6 |
7 | fi
--------------------------------------------------------------------------------
/zsh/theme.zsh:
--------------------------------------------------------------------------------
1 | PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[cyan]%}%M%{$fg[blue]%} %{$fg[magenta]%}%~% %B%{$fg[red]%}]%{$fg[blue]%}~> %b%{$reset_color%}%"
--------------------------------------------------------------------------------
/polybar/scripts/monitor-swap.sh:
--------------------------------------------------------------------------------
1 | if [ $(bspc query -M -m .focused --names) == "HDMI-A-0" ]; then
2 | bspc node -m HDMI-A-1
3 | else
4 | bspc node -m HDMI-A-0
5 | fi
--------------------------------------------------------------------------------
/bspwm/scripts/borders.sh:
--------------------------------------------------------------------------------
1 | if [ -f /tmp/borders ]; then
2 | bspc config border_width 2
3 | del /tmp/borders
4 | else
5 | bspc config border_width 0
6 | touch /tmp/borders
7 | fi
--------------------------------------------------------------------------------
/polybar/scripts/spotify.sh:
--------------------------------------------------------------------------------
1 | #if [ $(playerctl metadata -f '{{playerName}}') == 'spotify' ]
2 | if pgrep spotify >/dev/null ; then
3 | echo $(playerctl --player=spotify metadata -f '{{artist}} - {{title}}')
4 | fi
--------------------------------------------------------------------------------
/polybar/scripts/calendar.sh:
--------------------------------------------------------------------------------
1 | if [ $(bspc query -M -m --names) == "HDMI-A-0" ];
2 | then
3 | $HOME/.config/eww-own/bar/scripts/popup calendar
4 | else
5 | $HOME/.config/eww--own/bar2/scripts/popup calendar
6 | fi
--------------------------------------------------------------------------------
/scripts/bwunlock:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | sessionid=$(bw unlock "$1" | grep "==" | sed -n 3p | sed -e 's/$ bw list items --session //g')
3 | echo $sessionid
4 | echo $sessionid > ~/.bwsession
5 | bspc wm -r && pkill -USR1 -x sxhkd
--------------------------------------------------------------------------------
/waybar/modules/weather.sh:
--------------------------------------------------------------------------------
1 | class=display
2 | text=$(busctl --user -j get-property io.ntfd /weather openweathermap.strings RenderedTemplate | jq -r .data)
3 |
4 |
5 | echo -e "{\"text\":\""$text"\", \"class\":\""$class"\"}"
--------------------------------------------------------------------------------
/scripts/mouse-loc.sh:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 |
4 | if [ $1 = "-x" ]; then
5 | xdotool getmouselocation --shell | cut -b 3,4,5,6 | sed -n '1 p'
6 | elif [ $1 = "-y" ]; then
7 | xdotool getmouselocation --shell | cut -b 3,4,5,6 | sed -n '2 p'
8 | fi
--------------------------------------------------------------------------------
/waybar/modules/sysmenu.sh:
--------------------------------------------------------------------------------
1 | text=
2 | tooltip=$(uptime -p | sed -e 's/up //g'| sed -e 's/ hours/h/g' | sed -e 's/ minutes/m/g' | sed -e 's/,//g')
3 | class=sysmenu
4 |
5 | echo -e "{\"text\":\""$text"\", \"tooltip\":\""$tooltip"\", \"class\":\""$class"\"}"
--------------------------------------------------------------------------------
/waybar/waybar.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | # Terminate already running bar instances
4 | killall -q waybar
5 |
6 | # Wait until the processes have been shut down
7 | while pgrep -x waybar >/dev/null; do sleep 1; done
8 |
9 | # Launch main
10 | waybar
11 |
--------------------------------------------------------------------------------
/scripts/bspwm/layoutswitch.sh:
--------------------------------------------------------------------------------
1 | if [ $(cat ~/.kblayout) == us ]; then
2 | setxkbmap -layout gr
3 | echo gr > ~/.kblayout
4 | polybar-msg action "#keyboard.hook.0"
5 | else
6 | setxkbmap -layout us
7 | echo us > ~/.kblayout
8 | polybar-msg action "#keyboard.hook.0"
9 | fi
--------------------------------------------------------------------------------
/dunst/icons/volume-low.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/polybar/scripts/network.sh:
--------------------------------------------------------------------------------
1 | open_nm () {
2 | touch /tmp/nm-lockfile
3 | nm-connection-editor
4 | }
5 | close_nm () {
6 | del /tmp/nm-lockfile
7 | killall nm-connection-editor
8 | }
9 |
10 | if [ -f /tmp/nm-lockfile ]; then
11 | close_nm
12 | else
13 | open_nm
14 | fi
--------------------------------------------------------------------------------
/polybar/scripts/youtube.sh:
--------------------------------------------------------------------------------
1 | if [ $(playerctl metadata -f '{{playerName}}') == 'firefox' ]; then
2 | if [ $(cat ~/.polybar-yt-module) == "" ]; then
3 | echo $(playerctl metadata -f '{{title}}')
4 | fi
5 | fi
6 | ##playerctl metadata -f '{{artist}}' | sed "s/ - Topic//g" && echo "-" &&
7 |
--------------------------------------------------------------------------------
/polybar/scripts/tray.sh:
--------------------------------------------------------------------------------
1 | #CMD="trayer --margin 1 --padding 10 --expand true --edge top --widthtype request --height 30 --SetDockType false --distancefrom right --distance 45 --alpha 10 --align right --transparent true --expand true --tint 0x44475a"
2 | pgrep -x stalonetray >/dev/null && pkill stalonetray || stalonetray &
--------------------------------------------------------------------------------
/scripts/polybar/spotifyd:
--------------------------------------------------------------------------------
1 | while true; do
2 | sleep 1
3 | if [[ ! $(cat /tmp/polybarDataSpotify) == $(playerctl --player=spotify metadata -f '{{artist}} - {{title}}') ]]; then
4 | echo "" > /tmp/polybarIconSpotify
5 | polybar-msg action "#playerctl-spotify.hook.0" > /dev/null
6 | fi
7 | done
8 |
--------------------------------------------------------------------------------
/polybar/scripts/multi-screens.sh:
--------------------------------------------------------------------------------
1 | pkill polybar
2 | #if type "xrandr"; then
3 | for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
4 | MONITOR=$m polybar -r main -c $HOME/.config/polybar/bar/config.ini &
5 | done
6 | #else
7 | # polybar --reload main -c /home/george/.config/polybar/bar/config.ini &
8 | #fi
9 |
--------------------------------------------------------------------------------
/polybar/scripts/yt-lock.sh:
--------------------------------------------------------------------------------
1 |
2 | fun () {
3 | if [ $(cat ~/.polybar-yt-module) == "" ]; then
4 | echo "" > ~/.polybar-yt-module
5 | else
6 | echo "" > ~/.polybar-yt-module
7 | fi
8 | }
9 |
10 | if [ $1 == "echosym" ]; then
11 | cat ~/.polybar-yt-module
12 | else
13 | fun
14 | reload-pb
15 | fi
--------------------------------------------------------------------------------
/waybar/modules/layoutswitch.sh:
--------------------------------------------------------------------------------
1 | if [[ $(hyprctl devices | /usr/bin/grep "active" | head -8 | tail -1 | sed -e 's/active keymap: //g' | sed -e 's/ //g') = " English(US)" ]]; then hyprctl switchxkblayout logitech-g512-rgb-mechanical-gaming-keyboard 1; else hyprctl switchxkblayout logitech-g512-rgb-mechanical-gaming-keyboard 0; fi
--------------------------------------------------------------------------------
/dunst/colors/dracula.conf:
--------------------------------------------------------------------------------
1 | [urgency_low]
2 | background = "#282a36"
3 | foreground = "#6272a4"
4 | timeout = 10
5 |
6 | [urgency_normal]
7 | background = "#282a36"
8 | foreground = "#bd93f9"
9 | timeout = 10
10 |
11 | [urgency_critical]
12 | background = "#ff5555"
13 | foreground = "#f8f8f2"
14 | frame_color = "#ff5555"
15 | timeout = 0
--------------------------------------------------------------------------------
/dunst/icons/volume-medium.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dunst/icons/volume-high.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/polybar/scripts/test-fonts.pl:
--------------------------------------------------------------------------------
1 | use strict;
2 | use warnings;
3 | use Font::FreeType;
4 | my ($char) = @ARGV;
5 | foreach my $font_def (`fc-list`) {
6 | my ($file, $name) = split(/: /, $font_def);
7 | my $face = Font::FreeType->new->face($file);
8 | my $glyph = $face->glyph_from_char($char);
9 | if ($glyph) {
10 | print $font_def;
11 | }
12 | }
--------------------------------------------------------------------------------
/dunst/colors/catppuccin-frappe.conf:
--------------------------------------------------------------------------------
1 | [global]
2 | frame_color = "#8CAAEE"
3 | separator_color= frame
4 |
5 | [urgency_low]
6 | background = "#303446"
7 | foreground = "#C6D0F5"
8 |
9 | [urgency_normal]
10 | background = "#303446"
11 | foreground = "#C6D0F5"
12 |
13 | [urgency_critical]
14 | background = "#303446"
15 | foreground = "#C6D0F5"
16 | frame_color = "#EF9F76"
17 |
--------------------------------------------------------------------------------
/dunst/colors/catppuccin-latte.conf:
--------------------------------------------------------------------------------
1 | [global]
2 | frame_color = "#1E66F5"
3 | separator_color= frame
4 |
5 | [urgency_low]
6 | background = "#EFF1F5"
7 | foreground = "#4C4F69"
8 |
9 | [urgency_normal]
10 | background = "#EFF1F5"
11 | foreground = "#4C4F69"
12 |
13 | [urgency_critical]
14 | background = "#EFF1F5"
15 | foreground = "#4C4F69"
16 | frame_color = "#FE640B"
17 |
--------------------------------------------------------------------------------
/dunst/colors/catppuccin-mocha.conf:
--------------------------------------------------------------------------------
1 | [global]
2 | frame_color = "#89B4FA"
3 | separator_color= frame
4 |
5 | [urgency_low]
6 | background = "#1E1E2E"
7 | foreground = "#CDD6F4"
8 |
9 | [urgency_normal]
10 | background = "#1E1E2E"
11 | foreground = "#CDD6F4"
12 |
13 | [urgency_critical]
14 | background = "#1E1E2E"
15 | foreground = "#CDD6F4"
16 | frame_color = "#FAB387"
17 |
--------------------------------------------------------------------------------
/dunst/colors/catppuccin-macchiato.conf:
--------------------------------------------------------------------------------
1 | [global]
2 | frame_color = "#8AADF4"
3 | separator_color= frame
4 |
5 | [urgency_low]
6 | background = "#24273A"
7 | foreground = "#CAD3F5"
8 |
9 | [urgency_normal]
10 | background = "#24273A"
11 | foreground = "#CAD3F5"
12 |
13 | [urgency_critical]
14 | background = "#24273A"
15 | foreground = "#CAD3F5"
16 | frame_color = "#F5A97F"
17 |
--------------------------------------------------------------------------------
/dunst/icons/volume-muted.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/rofi-own/colors/colors.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | background: #1A1B26;
3 | background-alt: #16161E;
4 | background-alt2: #414868;
5 | foreground: #A9B1D6;
6 | foreground-alt: #061115;
7 | accent: #7DCFFF;
8 | transparent: #00000000;
9 | text-color: @fg;
10 | }
11 |
--------------------------------------------------------------------------------
/waybar/modules/player-swap.sh:
--------------------------------------------------------------------------------
1 | var="$(hyprctl activeworkspace | head -1 | sed -e 's/workspace ID //g' | sed -e 's/ on monitor HDMI-A-1://g')"
2 | var2=${var:0:1}
3 | if [ $var2 == "5" ]; then
4 | hyprctl dispatch workspace $(cat /tmp/music-player-switch)
5 | del /tmp/music-player-switch
6 | else
7 | echo $var2 > /tmp/music-player-switch
8 | hyprctl dispatch workspace 5
9 | fi
10 |
--------------------------------------------------------------------------------
/polybar/scripts/music-player-switch.sh:
--------------------------------------------------------------------------------
1 | if [ $1 == spotify ]; then
2 | var=5
3 | elif [ $1 == yt ]; then
4 | var=4
5 | fi
6 | if [ $(bspc query -D -d 'focused' --names) == $var ]; then
7 | bspc desktop -f $(cat /tmp/music-player-switch)
8 | del /tmp/music-player-switch
9 | else
10 | bspc query -D -d 'focused' --names > /tmp/music-player-switch
11 | bspc desktop -f $var
12 | fi
13 |
--------------------------------------------------------------------------------
/polybar/scripts/jgmenu.sh:
--------------------------------------------------------------------------------
1 | if [ -f ~/.jgmenu-lockfile ]; then
2 | del ~/.jgmenu-lockfile
3 | pgrep jgmenu >/dev/null && pkill jgmenu && jgmenu --csv-file=/home/george/.config/jgmenu/polybar.csv || jgmenu --csv-file=/home/george/.config/jgmenu/polybar.csv
4 | else
5 | pgrep jgmenu >/dev/null && pkill jgmenu && jgmenu --csv-file=/home/george/.config/jgmenu/polybar.csv || jgmenu --csv-file=/home/george/.config/jgmenu/polybar.csv
6 | fi
--------------------------------------------------------------------------------
/polybar/launch.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # Add this script to your wm startup file.
4 |
5 | DIR="$HOME/.config/polybar/bar"
6 |
7 | # Terminate already running bar instances
8 | killall -q polybar
9 |
10 | # Wait until the processes have been shut down
11 | while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
12 |
13 | # Launch the bar
14 | # polybar -q second -c "$DIR"/config.ini &
15 | polybar -q main -c "$DIR"/config.ini &
16 |
17 |
--------------------------------------------------------------------------------
/scripts/wynnpack:
--------------------------------------------------------------------------------
1 | #! /usr/bin/sh
2 |
3 | mkdir /tmp/wynnpack
4 | cp $1 /tmp/wynnpack/$1
5 | dir=$(pwd)
6 | cd /tmp/wynnpack
7 | jar -xf $1
8 | /usr/bin/rm $1
9 | d=$(date '+%d-%m')
10 | df=$(date '+%a %b %d %H:%M')
11 | echo '{"pack":{"pack_format":8,"description":"§7WynnResourcePack - 2.0\n§a(1.18, '$df')"}}' > pack.mcmeta
12 | zip -r WynnPack-$d.zip assets/ pack.mcmeta pack.png
13 | mv WynnPack-$d.zip $dir/
14 | cd $dir
15 | /usr/bin/rm -r /tmp/wynnpack
--------------------------------------------------------------------------------
/bspwm/keyboard-colors:
--------------------------------------------------------------------------------
1 | #!/bin/zsh
2 |
3 | g512-led -gn keys 89b4fa
4 | g512-led -gn fkeys ff79c6
5 | g512-led -gn arrows ff5555
6 | g512-led -gn numeric bd93f9
7 | g512-led -gn functions ffb86c
8 | g512-led -gn modifiers ff79c6
9 | g512-led -kn tab ff79c6
10 | g512-led -kn capslock ff79c6
11 | g512-led -kn backspace ff79c6
12 | g512-led -kn enter ff79c6
13 | #g512-led -kn space 89b4fa
14 | g512-led -kn escape ff79c6
15 | #g512-led -kn tilde ff79c6
16 | g512-led -c
--------------------------------------------------------------------------------
/polybar/scripts/youtube-lock.sh:
--------------------------------------------------------------------------------
1 | #polybar-msg action playerctl-youtube module_toggle >/dev/null
2 | #if [ $(cat /tmp/yt-lock) ]; then
3 | # echo lockfile exists
4 |
5 | # del /tmp/yt-lock
6 | # touch /tmp/yt-lock
7 | #else
8 | # echo str > /tmp/yt-lock
9 | #fi
10 |
11 | if [ "$1" = "toggle" ]; then
12 | if [ $(cat /tmp/yt-lock) ]; then
13 | del /tmp/yt-lock
14 | else
15 | echo str > /tmp/yt-lock
16 | fi
17 | else
18 | echo $(cat /tmp/yt-lock)
19 | fi
--------------------------------------------------------------------------------
/hypr/scripts/toggle_blur.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 | HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==2{print $2}')
3 | if [ "$HYPRGAMEMODE" = 1 ] ; then
4 | hyprctl --batch "\
5 | keyword animations:enabled 0;\
6 | keyword decoration:drop_shadow 0;\
7 | keyword decoration:blur 0;\
8 | keyword general:gaps_in 0;\
9 | keyword general:gaps_out 0;\
10 | keyword general:border_size 1;\
11 | keyword decoration:rounding 0"
12 | exit
13 | fi
14 | hyprctl reload
--------------------------------------------------------------------------------
/waybar/modules/windowbutton.sh:
--------------------------------------------------------------------------------
1 | if [[ $(hyprctl activewindow) = 'Invalid' ]]; then
2 | text=""
3 | class="empty"
4 | tooltip=""
5 | else
6 | if [ $1 = "-cl" ]; then
7 | text=" "
8 | class=close
9 | tooltip="Close"
10 | elif [ $1 = "-fl" ]; then
11 | text=""
12 | class=floating
13 | tooltip="Toggle float"
14 | elif [ $1 = "-max" ]; then
15 | text=" "
16 | class=maximize
17 | tooltip="Fullscreen"
18 | fi
19 | fi
20 |
21 | echo -e "{\"text\":\""$text"\", \"tooltip\":\""$tooltip"\", \"class\":\""$class"\"}"
--------------------------------------------------------------------------------
/rofi-own/scripts/pmc.sh:
--------------------------------------------------------------------------------
1 | wynnicon='\0icon\x1f/home/george/Documents/stuff/random-mc-stuff/wynncraft.png'
2 | var1=' Wynncraft (Fabric 1.19.3)'
3 | var2=' Wynncraft (Fabric 1.18.2)'
4 | var3=' Wynncraft (Forge 1.12.2)'
5 | cmd () {
6 | echo -en "$var1$wynnicon\n$var2$wynnicon\n$var3$wynnicon\n" | rofi -dmenu -theme ~/.config/rofi-own/pmc.rasi
7 | }
8 | chosen="$(cmd)"
9 | echo $chosen
10 | case ${chosen} in
11 | $var1)
12 | prismlauncher -l "wynn-1.19.3"
13 | ;;
14 | $var2)
15 | prismlauncher -l "wynn-1.18"
16 | ;;
17 | $var3)
18 | prismlauncher -l "wynn"
19 | ;;
20 | esac
--------------------------------------------------------------------------------
/waybar/modules/spotify-buttons.sh:
--------------------------------------------------------------------------------
1 | if [ $1 = "-prev" ]; then
2 | text=""
3 | class=prev
4 | tooltip="Previous"
5 | elif [ $1 = "-p" ]; then
6 | class=$(playerctl metadata --player=spotify --format '{{lc(status)}}')
7 | if [[ $class == "playing" ]]; then
8 | text=""
9 | tooltip="Pause"
10 | elif [[ $class == "paused" ]]; then
11 | text=""
12 | tooltip="Play"
13 | fi
14 | elif [ $1 = "-next" ]; then
15 | text=""
16 | class=next
17 | tooltip="Next"
18 | fi
19 |
20 | echo -e "{\"text\":\""$text"\", \"tooltip\":\""$tooltip"\", \"class\":\""$class"\"}"
--------------------------------------------------------------------------------
/waybar/modules/storage.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | mount="/"
4 | warning=20
5 | critical=10
6 |
7 | df -h -P -l "$mount" | awk -v warning=$warning -v critical=$critical '
8 | /\/.*/ {
9 | text=$4
10 | tooltip="Filesystem: "$1"\rSize: "$2"\rUsed: "$3"\rAvail: "$4"\rUse%: "$5"\rMounted on: "$6
11 | use=$5
12 | exit 0
13 | }
14 | END {
15 | class=""
16 | gsub(/%$/,"",use)
17 | if ((100 - use) < critical) {
18 | class="critical"
19 | } else if ((100 - use) < warning) {
20 | class="warning"
21 | }
22 | print "{\"text\":\""text"\", \"percentage\":"use",\"tooltip\":\""tooltip"\", \"class\":\""class"\"}"
23 | }
24 | '
25 |
--------------------------------------------------------------------------------
/scripts/wallpaper.sh:
--------------------------------------------------------------------------------
1 | icon='\0icon\x1f/home/george/scripts/assets/variety.svg'
2 | var1=' Select wallpaper'
3 | var2=' See wallpaper history'
4 | var3=' Clear wallpaper history'
5 | cmd () {
6 | echo -en "$var1$icon\n$var2$icon\n$var3$icon\n" | rofi -dmenu -theme ~/.config/rofi-own/pmc.rasi
7 | }
8 | if pgrep Hyprland; then var=-wl; else var=""; fi
9 | chosen="$(cmd)"
10 | echo $chosen
11 | case ${chosen} in
12 | $var1)
13 | kitty sh -c "wallpaper-set select ${var}"
14 | ;;
15 | $var2)
16 | kitty sh -c "wallpaper-set history"
17 | ;;
18 | $var3)
19 | wallpaper-set clr-history
20 | ;;
21 | esac
--------------------------------------------------------------------------------
/kitty/kitty.conf.bak:
--------------------------------------------------------------------------------
1 |
2 | #fonts
3 | font_family FantasqueSansMono Nerd Font
4 | bold_font auto
5 | italic_font auto
6 | bold_italic_font auto
7 | font_size 13.0
8 | background_opacity 0.6
9 |
10 | #Misc
11 | confirm_os_window_close 0
12 | map ctrl+v paste_from_clipboard
13 | copy_on_select yes
14 | shell_integration no-prompt-mark no-cursor
15 | update_check_interval 0
16 | remember_window_size no
17 | tab_title_template "Kitty : {title}"
18 |
19 | #Appearance
20 | # BEGIN_KITTY_THEME
21 | # Dracula
22 | include current-theme.conf
23 | # END_KITTY_THEME
24 | window_padding_width 4
25 |
26 | cursor_shape underline
27 | cursor_underline_thickness 1.0
28 |
--------------------------------------------------------------------------------
/kitty/kitty.conf:
--------------------------------------------------------------------------------
1 |
2 | #fonts
3 | font_family FantasqueSansMono Nerd Font
4 | bold_font auto
5 | italic_font auto
6 | bold_italic_font auto
7 | font_size 13.0
8 | background_opacity 0.6
9 |
10 | #Misc
11 | confirm_os_window_close 0
12 | map ctrl+v paste_from_clipboard
13 | copy_on_select yes
14 | shell_integration no-prompt-mark no-cursor
15 | update_check_interval 0
16 | remember_window_size no
17 | tab_title_template "Kitty : {title}"
18 |
19 | #Appearance
20 | # BEGIN_KITTY_THEME
21 | # Catppuccin-Mocha
22 | include current-theme.conf
23 | # END_KITTY_THEME
24 | window_padding_width 4
25 |
26 | cursor_shape underline
27 | cursor_underline_thickness 1.0
28 |
--------------------------------------------------------------------------------
/polybar/tray/config.ini:
--------------------------------------------------------------------------------
1 | [bar/systray]
2 | # As small as possible, polybar will resize it when items get added
3 | width = 1
4 |
5 | # Whatever fits your needs
6 | height = 40
7 |
8 | # Bottom left to imitate gnome-shells systray
9 | bottom = true
10 |
11 | # REQUIRED for us to be able to move the window
12 | override-redirect = true
13 |
14 | modules-right = placeholder
15 | tray-position = left
16 | tray-maxsize = 16
17 | tray-padding = 8
18 | tray-transparent = false
19 | tray-background = #99282a36
20 |
21 |
22 | border-color = #bd93f9
23 |
24 | [module/placeholder]
25 | # Just a dummy module as polybar always requires at least one amodule
26 | type = custom/script
27 | width = 1
--------------------------------------------------------------------------------
/bspwm/scripts/spotify.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #thanks spotify for being a pain in the ass
3 |
4 | id="${1?}" \
5 | instance="$3" \
6 | class="$2";
7 | desktop="5"
8 |
9 | case "$class" in
10 | (foo)
11 | bar;;
12 | ("")
13 | unset -v _NET_WM_PID;
14 | . /dev/fd/0 2>/dev/null </dev/null)" in
24 | (spotify)
25 | echo desktop=$desktop;;
26 | esac;;
27 | esac;
--------------------------------------------------------------------------------
/scripts/assets/variety.svg:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/starship.toml:
--------------------------------------------------------------------------------
1 | add_newline = false
2 | [username]
3 | format = "[╭─](bold blue)[in]($style) "
4 | style_user = "bold yellow"
5 | style_root = "bold red"
6 | show_always = true
7 |
8 | # Second param
9 | [hostname]
10 | format = "[$hostname]($style) [in](blue) "
11 | style = "bold yellow"
12 | trim_at = "-"
13 | ssh_only = true
14 | disabled = false
15 |
16 | # Third param
17 | [directory]
18 | read_only = " "
19 | read_only_style = "bold red"
20 | style = "bold cyan"
21 | truncation_length = 0
22 | truncate_to_repo = false
23 | truncation_symbol = "repo: "
24 |
25 | [character]
26 | #success_symbol = "[╰─](bold blue)"
27 | success_symbol = "[╰─>](bold blue)"
28 | error_symbol = "[╰─×](bold red)"
29 |
30 |
--------------------------------------------------------------------------------
/bspwm/scripts/desktop-switch-monitor.sh:
--------------------------------------------------------------------------------
1 | if [ $(bspc query -M -m .focused --names) == "HDMI-A-0" ]; then
2 | if [ $1 == "1" ]; then
3 | var="1"
4 | elif [ $1 == "2" ]; then
5 | var="2"
6 | elif [ $1 == "3" ]; then
7 | var="6"
8 | elif [ $1 == "4" ]; then
9 | var="7"
10 | elif [ $1 == "5" ]; then
11 | var="8"
12 | fi
13 | else
14 | if [ $1 == "1" ]; then
15 | var="3"
16 | elif [ $1 == "2" ]; then
17 | var="4"
18 | elif [ $1 == "3" ]; then
19 | var="5"
20 | elif [ $1 == "4" ]; then
21 | var="9"
22 | elif [ $1 == "5" ]; then
23 | var="0"
24 | fi
25 | fi
26 | bspc desktop -f $var
--------------------------------------------------------------------------------
/polybar/bar/colors.ini:
--------------------------------------------------------------------------------
1 | [color]
2 | bg1 = #282a36
3 | bg2 = #44475a
4 | bg3 = #44475a
5 | white = #f8f8f2
6 |
7 | # Dracula #
8 | #fg = #f8f8f2
9 | #bgt = #90282a36
10 | #blue = #6272a4
11 | #cyan = #8be9fd
12 | #green = #50fa7b
13 | #orange = #ffb86c
14 | #pink = #ff79c6
15 | #purple = #bd93f9
16 | #red = #ff5555
17 | #yellow = #f1fa8c
18 |
19 | # Catppuccin #
20 | fg = #cdd6f4
21 | bgt = #1E1E2E
22 | blue = #8aadf4
23 | cyan = #91d7e3
24 | green = #a6da95
25 | orange = #f5a97f
26 | pink = #f5bde6
27 | purple = #c6a0f6
28 | red = #ed8796
29 | yellow = #eed49f
30 |
31 | ### window buttons and workspaces have to be changed manually cause polybar is stupid
32 |
33 | [colors]
34 | include-file = ~/.config/polybar/bar/color.ini
--------------------------------------------------------------------------------
/waybar/modules/spotify.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | class=$(playerctl metadata --player=spotify --format '{{lc(status)}}')
4 | icon=""
5 |
6 | if [[ $class == "playing" ]]; then
7 | info=$(playerctl metadata --player=spotify --format '{{artist}} - {{title}}')
8 | if [[ ${#info} > 40 ]]; then
9 | info=$(echo $info | cut -c1-40)"..."
10 | fi
11 | text=$info" "$icon
12 | elif [[ $class == "paused" ]]; then
13 | info=$(playerctl metadata --player=spotify --format '{{artist}} - {{title}}')
14 | if [[ ${#info} > 40 ]]; then
15 | info=$(echo $info | cut -c1-40)"..."
16 | fi
17 | text=$info" "$icon
18 | elif [[ $class == "stopped" ]]; then
19 | text=""
20 | fi
21 |
22 | echo -e "{\"text\":\""$text"\", \"class\":\""$class"\"}"
23 |
--------------------------------------------------------------------------------
/rofi-own/scripts/usedram:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | mem_info=$(/tmp/afk-lock
6 | bspc monitor -f HDMI-A-1
7 | bspc query -D -d focused --names >/tmp/afk-lock-2
8 | kitty --class=afk-1 --start-as=fullscreen sh -c "tty-clock -s -c -C 4 -b" &
9 | kitty --class=afk-2 --start-as=fullscreen sh -c "cbonsai -l -i" &
10 | # g512-led -a ff5555
11 | g512-led -fx cwave keys 2a
12 | killall polybar
13 | else
14 | pkill tty-clock
15 | pkill cbonsai
16 | bspc desktop -f $(cat /tmp/afk-lock)
17 | bspc desktop -f $(cat /tmp/afk-lock-2)
18 | del /tmp/afk-lock
19 | del /tmp/afk-lock-2
20 | sh $HOME/.config/bspwm/keyboard-colors
21 | reload-pb
22 | fi
23 |
24 |
--------------------------------------------------------------------------------
/scripts/pipewire-simple.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | getDefaultSink() {
4 | defaultSink=$(pactl info | awk -F : '/Default Sink:/{print $2}')
5 | description=$(pactl list sinks | sed -n "/${defaultSink}/,/Description/s/^\s*Description: \(.*\)/\1/p")
6 | echo "${description}"
7 | }
8 |
9 | getDefaultSource() {
10 | defaultSource=$(pactl info | awk -F : '/Default Source:/{print $2}')
11 | description=$(pactl list sources | sed -n "/${defaultSource}/,/Description/s/^\s*Description: \(.*\)/\1/p")
12 | echo "${description}"
13 | }
14 |
15 | VOLUME=$(pamixer --get-volume-human)
16 | SINK=$(getDefaultSink)
17 | SOURCE=$(getDefaultSource)
18 |
19 | case $1 in
20 | "--up")
21 | pamixer --increase 10
22 | ;;
23 | "--down")
24 | pamixer --decrease 10
25 | ;;
26 | "--mute")
27 | pamixer --toggle-mute
28 | ;;
29 | *)
30 | echo "${VOLUME}"
31 | esac
32 |
--------------------------------------------------------------------------------
/kitty/dracula.colors.txt:
--------------------------------------------------------------------------------
1 | foreground #f8f8f2
2 | background #282a36
3 | selection_foreground #ffffff
4 | selection_background #44475a
5 |
6 | url_color #8be9fd
7 |
8 | # black
9 | color0 #21222c
10 | color8 #6272a4
11 |
12 | # red
13 | color1 #ff5555
14 | color9 #ff6e6e
15 |
16 | # green
17 | color2 #50fa7b
18 | color10 #69ff94
19 |
20 | # yellow
21 | color3 #f1fa8c
22 | color11 #ffffa5
23 |
24 | # blue
25 | color4 #bd93f9
26 | color12 #d6acff
27 |
28 | # magenta
29 | color5 #ff79c6
30 | color13 #ff92df
31 |
32 | # cyan
33 | color6 #8be9fd
34 | color14 #a4ffff
35 |
36 | # white
37 | color7 #f8f8f2
38 | color15 #ffffff
39 |
40 | # Cursor colors
41 | cursor #d6acff
42 | cursor_text_color background
43 |
44 | # Tab bar colors
45 | active_tab_foreground #282a36
46 | active_tab_background #f8f8f2
47 | inactive_tab_foreground #282a36
48 | inactive_tab_background #6272a4
49 |
50 | # Marks
51 | mark1_foreground #282a36
52 | mark1_background #ff5555
--------------------------------------------------------------------------------
/neofetch/config3.conf:
--------------------------------------------------------------------------------
1 | print_info() {
2 |
3 | prin " "
4 | #prin "$(color 7)╭──────────────$(color 4) Info $(color 7)─────────────╮"
5 | #prin " "
6 |
7 | info "$(color 6) (os)" distro
8 | info "$(color 2) (wm)" wm
9 | info "$(color 1) (upt)" uptime
10 | info "$(color 5) (pkgs)" packages
11 | info "$(color 3) (ram)" memory
12 |
13 | #prin " "
14 | #prin "$(color 7)╰─────────────────────────────────╯"
15 | }
16 |
17 |
18 | kernel_shorthand="on"
19 | distro_shorthand="on"
20 | os_arch="off"
21 | uptime_shorthand="tiny"
22 | memory_percent="off"
23 | memory_unit="M"
24 | package_managers="off"
25 | shell_path="off"
26 | shell_version="off"
27 | cpu_brand="on"
28 | cpu_speed="off"
29 | cpu_cores="off"
30 | cpu_temp="off"
31 | gpu_brand="on"
32 | gpu_type="all"
33 | refresh_rate="off"
34 | gtk_shorthand="on"
35 | bold="on"
36 | separator=" "
37 | image_source="auto"
38 | image_backend="ascii"
39 | ascii_distro="Arch_small"
40 | gap=3
41 | stdout="off"
42 | #ascii_colors=(4 7)
43 |
44 |
45 |
--------------------------------------------------------------------------------
/scripts/screenshot-wayland:
--------------------------------------------------------------------------------
1 | #!/usr/bin/zsh
2 |
3 | time=`date +%Y-%m-%d-%I-%M-%S`
4 | dir="$HOME/Pictures/screenshots-wayland"
5 | file="Screenshot_${time}.png"
6 |
7 | ## Add Minecraft and Hades cases
8 |
9 | notify_user () {
10 | if [[ -e "$dir/$file" ]]; then
11 | ACTION=$(dunstify -i $dir/$file --action="clicked,ACTION" 'Screenshot Saved')
12 | case "$ACTION" in
13 | "clicked")
14 | feh $dir/$file
15 | ;;
16 | esac
17 | else
18 | dunstify "Screenshot Deleted."
19 | fi
20 |
21 | }
22 |
23 | shotarea () {
24 | grim -g "$(slurp)" ${dir}/${file}
25 | wl-copy < ${dir}/${file}
26 | notify_user
27 | }
28 |
29 | ## Add area freeze
30 |
31 | imgtotxt () {
32 | grim -g "$(slurp)" ${dir}/${file}
33 | tesseract ${dir}/${file} /tmp/text.tmp --psm 6 -l eng txt
34 | wl-copy $(cat /tmp/text.tmp.txt)
35 | dunstify "Text copied"
36 | }
37 |
38 | if [[ "$1" == "--area" ]]; then
39 | shotarea
40 | #elif [[ "$1" == "--freeze" ]]; then
41 | # shotfreeze
42 | elif [[ "$1" == "--img-to-text" ]]; then
43 | imgtotxt
44 | fi
--------------------------------------------------------------------------------
/scripts/catfetch:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # Tiny colored fetch script
3 | # elenapan @ github || edited by Firewolf05 @ github
4 |
5 | f=3 b=4
6 | for j in f b; do
7 | for i in {0..7}; do
8 | printf -v $j$i %b "\e[${!j}${i}m"
9 | done
10 | done
11 | d=$'\e[1m'
12 | t=$'\e[0m'
13 | v=$'\e[7m'
14 |
15 | # Items
16 | h=wm
17 | wmname="$(xprop -id $(xprop -root -notype | awk '$1=="_NET_SUPPORTING_WM_CHECK:"{print $5}') -notype -f _NET_WM_NAME 8t | grep "WM_NAME" | cut -f2 -d \")"
18 |
19 | k=kr
20 | kernel="$(uname -r | cut -d '-' -f1)"
21 |
22 | sh=sh
23 | shell=$(basename $SHELL)
24 |
25 | o=os
26 | os="$(uname -s)"
27 |
28 |
29 | p=pk
30 | pk="$(pacman -Q | wc -l)"
31 |
32 | u=up
33 | up="$(uptime -p | sed -e 's/up //g'| sed -e 's/ hours/h/g' | sed -e 's/ minutes/m/g' | sed -e 's/,//g')"
34 | #up="$(awk '{print int($1/3600)"h,"int(($1%3600)/60)"m"}' /proc/uptime)"
35 |
36 | cat << EOF
37 |
38 | /l、 $f3$o $t~ arch
39 | (゚、 。7 $f1$u $t~ $up
40 | l ~ヽ $f6$h $t~ $wmname
41 | じしf_,)ノ $f5$p $t~ $pk
42 |
43 | EOF
--------------------------------------------------------------------------------
/waybar/mocha.css:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | * Catppuccin Mocha palette
4 | * Maintainer: rubyowo
5 | *
6 | */
7 |
8 | @define-color base #1e1e2e;
9 | @define-color mantle #181825;
10 | @define-color crust #11111b;
11 |
12 | @define-color text #cdd6f4;
13 | @define-color subtext0 #a6adc8;
14 | @define-color subtext1 #bac2de;
15 |
16 | @define-color surface0 #313244;
17 | @define-color surface1 #45475a;
18 | @define-color surface2 #585b70;
19 |
20 | @define-color overlay0 #6c7086;
21 | @define-color overlay1 #7f849c;
22 | @define-color overlay2 #9399b2;
23 |
24 | @define-color blue #89b4fa;
25 | @define-color lavender #b4befe;
26 | @define-color sapphire #74c7ec;
27 | @define-color sky #89dceb;
28 | @define-color teal #94e2d5;
29 | @define-color green #a6e3a1;
30 | @define-color yellow #f9e2af;
31 | @define-color peach #fab387;
32 | @define-color maroon #eba0ac;
33 | @define-color red #f38ba8;
34 | @define-color mauve #cba6f7;
35 | @define-color pink #f5c2e7;
36 | @define-color flamingo #f2cdcd;
37 | @define-color rosewater #f5e0dc;
38 |
--------------------------------------------------------------------------------
/scripts/unzip:
--------------------------------------------------------------------------------
1 | #! /usr/bin/bash
2 |
3 | _unzip () {
4 | if [[ ! -f "$1" ]]; then
5 | echo -e "File \e[31m$1\e[0m does not exist, exiting"
6 | exit
7 | fi
8 |
9 | if [ -n "$2" ]; then
10 | dir=$2
11 | dircheck=true
12 | else
13 | dir=$(echo "${1%.*}")
14 | dircheck=false
15 | fi
16 |
17 | while [ -d "$dir" ]
18 | do
19 | echo -e "Directory already exists, extracting into \e[32m$dir(2) \e[0minstead"
20 | dir="$dir(2)"
21 | done
22 |
23 | mkdir $dir
24 | bsdtar xf$cmdh $1 -C $dir
25 | if $dircheck ; then
26 | echo -e "Successfully extracted into \e[32m$dir\e[0m"
27 | else
28 | echo -e "No directory given, extracted into \e[32m$dir\e[0m"
29 | fi
30 | }
31 |
32 | _help () {
33 | echo -e "\e[31m ===> \e[32munzip\e[0m [source] [target directory]"
34 | }
35 |
36 | case $1 in
37 | "--help")
38 | _help
39 | ;;
40 | "--silent")
41 | cmdh=""
42 | _unzip $2 $3
43 | ;;
44 | *)
45 | cmdh="v"
46 | _unzip $@
47 | ;;
48 | esac
49 |
50 |
51 |
--------------------------------------------------------------------------------
/polybar/scripts/module-playerctl.sh:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | display () {
4 | if [[ $(cat ~/.module-playerctl) = " " ]]; then
5 | echo "%{u#cdd6f4}%{F#cdd6f4} - "
6 | elif [[ $(cat ~/.module-playerctl) = "--player=spotify" ]]; then
7 | echo "%{u#a6da95}%{F#a6da95} "
8 | elif [[ $(cat ~/.module-playerctl) = "--player=firefox" ]]; then
9 | echo "%{u#ed8796}%{F#ed8796}"
10 | fi
11 |
12 | }
13 |
14 | switch () {
15 | if [[ $(cat ~/.module-playerctl) = " " ]]; then
16 | echo "--player=spotify" > ~/.module-playerctl
17 | polybar-msg action "#playerctl-display.hook.0"
18 | elif [[ $(cat ~/.module-playerctl) = "--player=spotify" ]]; then
19 | echo "--player=firefox" > ~/.module-playerctl
20 | polybar-msg action "#playerctl-display.hook.0"
21 | elif [[ $(cat ~/.module-playerctl) = "--player=firefox" ]]; then
22 | echo " " > ~/.module-playerctl
23 | polybar-msg action "#playerctl-display.hook.0"
24 | fi
25 | }
26 |
27 | if [ $1 == "display" ]; then
28 | display
29 | elif [ $1 == "switch" ]; then
30 | switch
31 | fi
--------------------------------------------------------------------------------
/waybar/modules/mail.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python
2 |
3 | import os
4 | import imaplib
5 |
6 | import mailsecrets
7 |
8 | def getmails(username, password, server):
9 | imap = imaplib.IMAP4_SSL(server, 993)
10 | imap.login(username, password)
11 | imap.select('INBOX')
12 | ustatus, uresponse = imap.uid('search', None, 'UNSEEN')
13 | if ustatus == 'OK':
14 | unread_msg_nums = uresponse[0].split()
15 | else:
16 | unread_msg_nums = []
17 |
18 | fstatus, fresponse = imap.uid('search', None, 'FLAGGED')
19 | if fstatus == 'OK':
20 | flagged_msg_nums = fresponse[0].split()
21 | else:
22 | flagged_msg_nums = []
23 |
24 | return [len(unread_msg_nums), len(flagged_msg_nums)]
25 |
26 | ping = os.system("ping " + mailsecrets.server + " -c1 > /dev/null 2>&1")
27 | if ping == 0:
28 | mails = getmails(mailsecrets.username, mailsecrets.password, mailsecrets.server)
29 | text = ''
30 | alt = ''
31 |
32 | if mails[0] > 0:
33 | text = alt = str(mails[0])
34 | if mails[1] > 0:
35 | alt = str(mails[1]) + " " + alt
36 | else:
37 | exit(1)
38 |
39 | print('{"text":"' + text + '", "alt": "' + alt + '"}')
40 |
41 | else:
42 | exit(1)
43 |
--------------------------------------------------------------------------------
/rofi-own/scripts/usedcpu:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | PREV_TOTAL=0
4 | PREV_IDLE=0
5 |
6 | cpuFile="/tmp/.cpu"
7 |
8 | if [[ -f "${cpuFile}" ]]; then
9 | fileCont=$(cat "${cpuFile}")
10 | PREV_TOTAL=$(echo "${fileCont}" | head -n 1)
11 | PREV_IDLE=$(echo "${fileCont}" | tail -n 1)
12 | fi
13 |
14 | CPU=(`cat /proc/stat | grep '^cpu '`) # Get the total CPU statistics.
15 | unset CPU[0] # Discard the "cpu" prefix.
16 | IDLE=${CPU[4]} # Get the idle CPU time.
17 |
18 | # Calculate the total CPU time.
19 | TOTAL=0
20 |
21 | for VALUE in "${CPU[@]:0:4}"; do
22 | let "TOTAL=$TOTAL+$VALUE"
23 | done
24 |
25 | if [[ "${PREV_TOTAL}" != "" ]] && [[ "${PREV_IDLE}" != "" ]]; then
26 | # Calculate the CPU usage since we last checked.
27 | let "DIFF_IDLE=$IDLE-$PREV_IDLE"
28 | let "DIFF_TOTAL=$TOTAL-$PREV_TOTAL"
29 | let "DIFF_USAGE=(1000*($DIFF_TOTAL-$DIFF_IDLE)/$DIFF_TOTAL+5)/10"
30 | if [[ $1 = "-i" ]]; then
31 | echo " ${DIFF_USAGE}%"
32 | else
33 | echo "${DIFF_USAGE}%"
34 | fi
35 | else
36 | if [[ $1 = "-i" ]]; then
37 | echo " ?"
38 | else
39 | echo "?"
40 | fi
41 | fi
42 |
43 | # Remember the total and idle CPU times for the next check.
44 | echo "${TOTAL}" > "${cpuFile}"
45 | echo "${IDLE}" >> "${cpuFile}"
46 |
--------------------------------------------------------------------------------
/rofi-own/scripts/powermenu.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ## Author : Aditya Shakya
4 | ## Mail : adi1090x@gmail.com
5 | ## Github : @adi1090x
6 | ## Twitter : @adi1090x
7 |
8 | style="rounded"
9 |
10 | dir="$HOME/.config/rofi/"
11 | rofi_command="rofi -theme $dir/powermenu.rasi"
12 |
13 | uptime=$(uptime -p | sed -e 's/up //g')
14 | cpu=$($HOME/.config/rofi/scripts/usedcpu)
15 | memory=$($HOME/.config/rofi/scripts/usedram)
16 |
17 | # Options
18 | shutdown=""
19 | reboot=""
20 | lock=""
21 | suspend=""
22 | logout=""
23 |
24 | # Confirmation
25 | confirm_exit() {
26 | rofi -dmenu\
27 | -i\
28 | -no-fixed-num-lines\
29 | -p "Are You Sure? : "\
30 | -theme $HOME/.config/rofi-new/confirm.rasi
31 | }
32 |
33 |
34 | # Variable passed to rofi
35 | options="$shutdown\n$reboot\n$lock\n$suspend\n$logout"
36 |
37 | chosen="$(echo -e "$options" | $rofi_command -p "祥 $uptime | $cpu | $memory " -dmenu -selected-row 2)"
38 | case $chosen in
39 | $shutdown)
40 | systemctl poweroff
41 | ;;
42 | $reboot)
43 | systemctl reboot
44 | ;;
45 | $lock)
46 | betterlockscreen -l
47 | ;;
48 | $suspend)
49 | mpc -q pause
50 | amixer set Master mute
51 | systemctl suspend
52 | ;;
53 | $logout)
54 | bspc quit
55 | ;;
56 | esac
57 |
--------------------------------------------------------------------------------
/rofi-own/scripts/quicklinks.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ## Author : Aditya Shakya
4 | ## Mail : adi1090x@gmail.com
5 | ## Github : @adi1090x
6 | ## Twitter : @adi1090x
7 |
8 | rofi_command="rofi -theme $HOME/.config/rofi/style.rasi"
9 |
10 | # Error msg
11 | msg() {
12 | rofi -theme "$dir/message.rasi" -e "$1"
13 | }
14 |
15 | # Browser
16 | if [[ -f /usr/bin/firefox ]]; then
17 | app="firefox"
18 | elif [[ -f /usr/bin/chromium ]]; then
19 | app="chromium"
20 | elif [[ -f /usr/bin/midori ]]; then
21 | app="midori"
22 | else
23 | msg "No suitable web browser found!"
24 | exit 1
25 | fi
26 |
27 | # Links
28 | google=""
29 |
30 | twitter=""
31 | github=""
32 | mail=""
33 | youtube=""
34 |
35 | # Variable passed to rofi
36 | options="$google\n$twitter\n$github\n$mail\n$youtube"
37 |
38 | chosen="$(echo -e "$options" | $rofi_command -p "Open In : Firefox" -dmenu -selected-row 0)"
39 | case $chosen in
40 | $google)
41 | $app https://duckduckgo.com/ &
42 | ;;
43 | $twitter)
44 | $app https://www.twitter.com &
45 | ;;
46 | $github)
47 | $app https://www.github.com &
48 | ;;
49 | $mail)
50 | $app https://www.gmail.com &
51 | ;;
52 | $youtube)
53 | $app https://www.youtube.com &
54 | ;;
55 | esac
56 |
57 |
--------------------------------------------------------------------------------
/scripts/wallpaper-set:
--------------------------------------------------------------------------------
1 | temp=/tmp/rangerfilechooser
2 | dir=$HOME/Documents/wallpapers/
3 | hist=$HOME/Documents/wallpapers/.history/
4 |
5 | sel () {
6 | ranger --choosefile $temp --selectfile ${dir}$(/bin/ls --group-directories-first | head -1)
7 | feh --bg-fill "$(cat $temp)"
8 | cp "$(cat $temp)" ${hist}
9 | if [ -f ${hist}1 ]; then /bin/rm ${hist}1; fi
10 | }
11 |
12 | sel_wl () {
13 | ranger --choosefile $temp --selectfile ${dir}$(/bin/ls --group-directories-first | head -1)
14 | pkill swaybg && swaybg -m fill -i "$(cat $temp)" || swaybg -m fill -i "$(cat $temp)" &!
15 | cp $temp ~/.lastwallpaper-wl
16 | cp "$(cat $temp)" ${hist}
17 | if [ -f ${hist}1 ]; then /bin/rm ${hist}1; fi
18 | }
19 |
20 | history () {
21 | ranger -r $HOME/.config/ranger/sec --choosefile $temp --selectfile ${hist}$(/bin/ls -tr ${hist} | tail -1)
22 | feh --bg-fill "$(cat $temp)"
23 | file=$(basename $(cat $temp))
24 | cp $(cat $temp) /tmp/$file
25 | /bin/rm $(cat $temp)
26 | mv "/tmp/$file" ${hist}
27 | }
28 |
29 | if [ $1 = "select" ]; then
30 | if [ $2 = "-wl" ]; then
31 | sel_wl
32 | else
33 | sel
34 | fi
35 | elif [ $1 = "history" ]; then
36 | history
37 | elif [ $1 = "clr-history" ]; then
38 | /bin/rm ${hist}*
39 | echo "No recent wallpapers" > ${hist}1
40 | fi
--------------------------------------------------------------------------------
/scripts/bloons:
--------------------------------------------------------------------------------
1 | gameDir=/mnt/1tb-hdd/SteamLibrary/steamapps/common/BloonsTD6
2 | modsDir=~/BloonMods
3 |
4 | enable () {
5 | x=0
6 | mv $modsDir/version.dll $gameDir/version.dll && x=$((x+1))
7 | mv $modsDir/MelonLoader $gameDir/MelonLoader && x=$((x+1))
8 | mv $modsDir/Mods $gameDir/Mods && x=$((x+1))
9 | mv $modsDir/dobby.dll $gameDir/dobby.dll && x=$((x+1))
10 | if [ $x == 4 ]; then
11 | echo Enabled > $modsDir/lockfile
12 | echo Enabled mods
13 | else
14 | echo Something failed :c
15 | fi
16 | }
17 |
18 | disable () {
19 | x=0
20 | mv $gameDir/version.dll $modsDir/version.dll && x=$((x+1))
21 | mv $gameDir/MelonLoader $modsDir/MelonLoader && x=$((x+1))
22 | mv $gameDir/Mods $modsDir/Mods && x=$((x+1))
23 | mv $gameDir/dobby.dll $modsDir/dobby.dll && x=$((x+1))
24 | if [ $x == 4 ]; then
25 | echo Disabled > $modsDir/lockfile
26 | echo Disabled mods
27 | else
28 | echo Something failed :c
29 | fi
30 | }
31 |
32 | toggle () {
33 | if [ $(cat $modsDir/lockfile) == "Disabled" ]; then
34 | enable
35 | else
36 | disable
37 | fi
38 | }
39 |
40 | case $1 in
41 | "enable")
42 | enable
43 | ;;
44 | "disable")
45 | disable
46 | ;;
47 | "toggle")
48 | toggle
49 | ;;
50 | "status")
51 | cat $modsDir/lockfile
52 | ;;
53 | esac
54 |
--------------------------------------------------------------------------------
/scripts/polybar/spotify-playerctl.sh:
--------------------------------------------------------------------------------
1 | action () {
2 | if [[ $1 == "pause" ]]; then
3 | echo "" > /tmp/polybarIconSpotify
4 | polybar-msg action "#playerctl-spotify.hook.0" > /dev/null
5 | playerctl --player=spotify pause
6 | elif [[ $1 == "play" ]]; then
7 | echo "" > /tmp/polybarIconSpotify
8 | polybar-msg action "#playerctl-spotify.hook.0" > /dev/null
9 | playerctl --player=spotify play
10 | fi
11 | }
12 |
13 | display () {
14 | echo $(playerctl --player=spotify metadata -f '{{artist}} - {{title}}') > /tmp/polybarDataSpotify
15 | icon=$(cat /tmp/polybarIconSpotify)
16 | if pgrep spotify >/dev/null ; then
17 | if [ $icon = "" ]; then
18 | echo "%{A1:playerctl --player=spotify previous:} %{A}%{A1:~/scripts/polybar/spotify-playerctl.sh action pause:}$icon%{A}%{A1:playerctl --player=spotify next:} %{A}| " $(playerctl --player=spotify metadata -f '{{artist}} - {{title}}')
19 | else
20 | echo "%{A1:playerctl --player=spotify previous:} %{A}%{A1:~/scripts/polybar/spotify-playerctl.sh action play:}$icon%{A}%{A1:playerctl --player=spotify next:} %{A}| " $(playerctl --player=spotify metadata -f '{{artist}} - {{title}}')
21 | fi
22 | else
23 | echo
24 | fi
25 | }
26 |
27 |
28 | if [[ $1 == "display" ]]; then
29 | display
30 | elif [[ $1 == "action" ]]; then
31 | action $2
32 | fi
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # dotfiles
2 | **Window Manager**: bspwm \
3 | **Compositor**: [Picom (jonaburg fork)](https://github.com/jonaburg/picom) \
4 | **Bar**: [Polybar](https://github.com/polybar/polybar/)
5 |
6 | **Discord customization**: [Vencord](https://github.com/Vendicated/Vencord) - [OpenAsar](https://openasar.dev/) - [Catppuccin theme (fork of the official theme with slightly edited colors)](https://github.com/Firewolf05/catppuccin-discord) \
7 | **Editor**: [Code - OSS](https://archlinux.org/packages/community/x86_64/code/) - [Catppuccin theme (Mocha)](https://github.com/catppuccin/vscode) \
8 | **File manager**: ranger \
9 | **Fetch programs**: neofetch - [catfetch](https://github.com/Firewolf05/dotfiles/blob/main/neofetch/catfetch) \
10 | **Other**: [cava](https://github.com/karlstav/cava) - tty-clock
11 |
12 | **GTK theme**: [Catppuccin-Blue](https://github.com/catppuccin/gtk) \
13 | **Icons**: [Papirus](https://github.com/PapirusDevelopmentTeam/papirus-icon-theme)
14 |
15 | **Firefox**: [WaveFox](https://github.com/QNetITQ/WaveFox) - Catppuccin-mocha-lavender
16 |
17 | 
18 |
19 | 
20 |
21 | 
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/bspwm/scripts/jgmenu.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | command=$(xdotool getmouselocation --shell | cut -b 3,4,5,6 | sed -n '2 p')
3 |
4 | if_polybar () {
5 | if (($command > 31)); then
6 | if [ -f ~/.jgmenu-lockfile ]; then
7 | del ~/.jgmenu-lockfile
8 | pgrep jgmenu >/dev/null && pkill jgmenu && jgmenu || jgmenu
9 | else
10 | pgrep jgmenu >/dev/null && pkill jgmenu && jgmenu || jgmenu
11 | fi
12 | fi
13 | }
14 |
15 | if_kitty () {
16 | if [[ $(xdotool getactivewindow getwindowclassname) == "kitty" ]]; then
17 | if (($command > 40)); then
18 | if [ -f ~/.jgmenu-lockfile ]; then
19 | del ~/.jgmenu-lockfile
20 | pgrep jgmenu >/dev/null && pkill jgmenu && jgmenu --csv-file=/home/george/.config/jgmenu/kitty.csv || jgmenu --csv-file=/home/george/.config/jgmenu/kitty.csv
21 | else
22 | pgrep jgmenu >/dev/null && pkill jgmenu && jgmenu --csv-file=/home/george/.config/jgmenu/kitty.csv || jgmenu --csv-file=/home/george/.config/jgmenu/kitty.csv
23 | fi
24 | fi
25 | fi
26 | }
27 |
28 | if_variety () {
29 | if [[ $(xdotool getactivewindow getwindowname) == "Variety Images" ]]; then
30 | if_polybar
31 | elif [[ $(xdotool getactivewindow getwindowname) == "Variety History" ]]; then
32 | if_polybar
33 | fi
34 | }
35 |
36 | if bspc query -D -d 'focused.!occupied' ; then
37 | if_polybar
38 | else
39 | if_variety
40 | fi
41 |
42 |
--------------------------------------------------------------------------------
/scripts/git-prep.sh:
--------------------------------------------------------------------------------
1 | #! /usr/bin/bash
2 |
3 | cfg="$HOME/.config"
4 | dots="$HOME/dotfiles"
5 | x=0
6 |
7 | # configs
8 | rm -r $dots/bspwm && cp -r $cfg/bspwm $dots/ && echo Copied bspwm config && x=$((x+1))
9 | rm -r $dots/ranger && cp -r $cfg/ranger $dots/ && echo Copied ranger config && x=$((x+1))
10 | rm -r $dots/dunst && cp -r $cfg/dunst $dots/ && echo Copied dunst config && x=$((x+1))
11 | rm -r $dots/kitty && cp -r $cfg/kitty $dots/ && echo Copied kitty config && x=$((x+1))
12 | rm -r $dots/neofetch && cp -r $cfg/neofetch $dots/ && echo Copied neofetch config && x=$((x+1))
13 | rm -r $dots/picom && cp -r $cfg/picom $dots/ && echo Copied picom config && x=$((x+1))
14 | rm -r $dots/polybar && cp -r $cfg/polybar $dots/ && echo Copied polybar config && x=$((x+1))
15 | rm -r $dots/rofi-own && cp -r $cfg/rofi-own $dots/ && echo Copied rofi config && x=$((x+1))
16 | rm -r $dots/stalonetrayrc && cp $cfg/stalonetrayrc $dots/ && echo Copied stalonetray config && x=$((x+1))
17 | rm -r $dots/starship.toml && cp $cfg/starship.toml $dots/ && echo Copied starship config && x=$((x+1))
18 | rm -r $dots/hypr && cp -r $cfg/hypr $dots/ && echo Copied Hyprland config && x=$((x+1))
19 | rm -r $dots/waybar && cp -r $cfg/waybar $dots/ && echo Copied Waybar config && x=$((x+1))
20 |
21 |
22 | # scripts
23 | rm -r $dots/scripts && cp -r $HOME/scripts $dots/scripts && rm -r $dots/scripts/wip && echo Copied scripts && x=$((x+1))
24 |
25 | # zsh
26 | rm -r $dots/zsh/* && cp -r $cfg/zsh/aliases.zsh $cfg/zsh/functions.zsh $cfg/zsh/theme.zsh $cfg/zsh/zshrc $dots/zsh && echo Copied zsh config && x=$((x+1))
27 |
28 | echo
29 | if [ $x == 14 ]; then
30 | echo Copied everything successfully
31 | else
32 | echo Something failed
33 | fi
34 |
35 | echo "git add ."
36 | echo "git commit -m "
37 | echo "git push -u origin main"
38 | cd $dots
39 | $SHELL
40 |
--------------------------------------------------------------------------------
/kitty/Catppuccin.conf:
--------------------------------------------------------------------------------
1 | # vim:ft=kitty
2 |
3 | ## name: Catppuccin
4 | ## author: Pocco81 (https://github.com/Pocco81)
5 | ## license: MIT
6 | ## upstream: https://raw.githubusercontent.com/catppuccin/kitty/main/catppuccin.conf
7 | ## blurb: Soothing pastel theme for the high-spirited!
8 |
9 | # The basic colors
10 | foreground #D9E0EE
11 | background #1E1E2E
12 | selection_foreground #D9E0EE
13 | selection_background #575268
14 |
15 | # Cursor colors
16 | cursor #F5E0DC
17 | cursor_text_color #1E1E2E
18 |
19 | # URL underline color when hovering with mouse
20 | url_color #F5E0DC
21 |
22 | # kitty window border colors
23 | active_border_color #C9CBFF
24 | inactive_border_color #575268
25 | bell_border_color #FAE3B0
26 |
27 | # OS Window titlebar colors
28 | wayland_titlebar_color system
29 | macos_titlebar_color system
30 |
31 | #: Tab bar colors
32 | active_tab_foreground #F5C2E7
33 | active_tab_background #575268
34 | inactive_tab_foreground #D9E0EE
35 | inactive_tab_background #1E1E2E
36 | tab_bar_background #161320
37 |
38 | # Colors for marks (marked text in the terminal)
39 |
40 | mark1_foreground #1E1E2E
41 | mark1_background #96CDFB
42 | mark2_foreground #1E1E2E
43 | mark2_background #F5C2E7
44 | mark3_foreground #1E1E2E
45 | mark3_background #B5E8E0
46 |
47 | #: The 16 terminal colors
48 |
49 | #: black
50 | color0 #6E6C7E
51 | color8 #988BA2
52 |
53 | #: red
54 | color1 #F28FAD
55 | color9 #F28FAD
56 |
57 | #: green
58 | color2 #ABE9B3
59 | color10 #ABE9B3
60 |
61 | #: yellow
62 | color3 #FAE3B0
63 | color11 #FAE3B0
64 |
65 | #: blue
66 | color4 #96CDFB
67 | color12 #96CDFB
68 |
69 | #: magenta
70 | color5 #F5C2E7
71 | color13 #F5C2E7
72 |
73 | #: cyan
74 | color6 #89DCEB
75 | color14 #89DCEB
76 |
77 | #: white
78 | color7 #D9E0EE
79 | color15 #D9E0EE
80 |
--------------------------------------------------------------------------------
/kitty/current-theme.conf:
--------------------------------------------------------------------------------
1 | # vim:ft=kitty
2 |
3 | ## name: Catppuccin-Mocha
4 | ## author: Pocco81 (https://github.com/Pocco81)
5 | ## license: MIT
6 | ## upstream: https://github.com/catppuccin/kitty/blob/main/mocha.conf
7 | ## blurb: Soothing pastel theme for the high-spirited!
8 |
9 |
10 |
11 | # The basic colors
12 | foreground #CDD6F4
13 | background #1E1E2E
14 | selection_foreground #1E1E2E
15 | selection_background #F5E0DC
16 |
17 | # Cursor colors
18 | cursor #F5E0DC
19 | cursor_text_color #1E1E2E
20 |
21 | # URL underline color when hovering with mouse
22 | url_color #F5E0DC
23 |
24 | # Kitty window border colors
25 | active_border_color #B4BEFE
26 | inactive_border_color #6C7086
27 | bell_border_color #F9E2AF
28 |
29 | # OS Window titlebar colors
30 | wayland_titlebar_color system
31 | macos_titlebar_color system
32 |
33 | # Tab bar colors
34 | active_tab_foreground #11111B
35 | active_tab_background #CBA6F7
36 | inactive_tab_foreground #CDD6F4
37 | inactive_tab_background #181825
38 | tab_bar_background #11111B
39 |
40 | # Colors for marks (marked text in the terminal)
41 | mark1_foreground #1E1E2E
42 | mark1_background #B4BEFE
43 | mark2_foreground #1E1E2E
44 | mark2_background #CBA6F7
45 | mark3_foreground #1E1E2E
46 | mark3_background #74C7EC
47 |
48 | # The 16 terminal colors
49 |
50 | # black
51 | color0 #45475A
52 | color8 #585B70
53 |
54 | # red
55 | color1 #F38BA8
56 | color9 #F38BA8
57 |
58 | # green
59 | color2 #A6E3A1
60 | color10 #A6E3A1
61 |
62 | # yellow
63 | color3 #F9E2AF
64 | color11 #F9E2AF
65 |
66 | # blue
67 | color4 #89B4FA
68 | color12 #89B4FA
69 |
70 | # magenta
71 | color5 #F5C2E7
72 | color13 #F5C2E7
73 |
74 | # cyan
75 | color6 #94E2D5
76 | color14 #94E2D5
77 |
78 | # white
79 | color7 #BAC2DE
80 | color15 #A6ADC8
81 |
--------------------------------------------------------------------------------
/neofetch/config1.conf:
--------------------------------------------------------------------------------
1 | print_info() {
2 |
3 | prin " "
4 | info " " title
5 | prin "$(color 7)┌──────────────────────────────────────┐"
6 | #prin " "
7 |
8 | #info " $(color 4) \n" model
9 | info " $(color 6) \n" cpu
10 | prin " $(color 2) \n" AMD\ ATI\ Radeon\ RX\ 580
11 | info " $(color 1) \n" memory
12 | info " $(color 5) \n" resolution
13 |
14 | #prin " "
15 | #prin "$(color 7)╰──────────────────────────────────────╯"
16 | #prin " "
17 | prin "$(color 7)├──────────────────────────────────────┤"
18 | #prin " "
19 |
20 | info " $(color 4) \n" distro
21 | #prin " $(color 4) \n" SteamOS
22 | info " $(color 4) \n" kernel
23 | info " $(color 6) \n" wm
24 | info " $(color 2) \n" shell
25 | info " $(color 3) \n" term
26 | #info " $(color 7) \n" term_font
27 | info " $(color 5) \n" theme
28 | info " $(color 1) \n" icons
29 | info " $(color 2) \n" packages
30 | info " $(color 3) \n" uptime
31 |
32 | #prin " "
33 | prin "$(color 7)└──────────────────────────────────────┘"
34 | prin " "
35 | }
36 |
37 |
38 | kernel_shorthand="on"
39 | distro_shorthand="on"
40 | os_arch="off"
41 | uptime_shorthand="on"
42 | memory_percent="on"
43 | memory_unit="gib"
44 | package_managers="on"
45 | shell_path="off"
46 | shell_version="off"
47 | cpu_brand="on"
48 | cpu_speed="off"
49 | cpu_cores="off"
50 | cpu_temp="off"
51 | gpu_brand="on"
52 | gpu_type="all"
53 | refresh_rate="off"
54 | gtk_shorthand="on"
55 | bold="on"
56 | separator=" "
57 | image_source="auto"
58 | #ascii_distro="ArchLinux_small"
59 | gap=3
60 | stdout="off"
61 | ascii_colors=(distro)
62 | image_backend="ascii"
63 | image_source="/home/george/.config/neofetch/logo1.png"
64 | #image_source="/home/george/.config/neofetch/logo1.png"
--------------------------------------------------------------------------------
/kitty/Catppuccin-mocha.conf:
--------------------------------------------------------------------------------
1 | # vim:ft=kitty
2 |
3 | ## name: Catppuccin-Mocha
4 | ## author: Pocco81 (https://github.com/Pocco81)
5 | ## license: MIT
6 | ## upstream: https://github.com/catppuccin/kitty/blob/main/mocha.conf
7 | ## blurb: Soothing pastel theme for the high-spirited!
8 |
9 |
10 |
11 | # The basic colors
12 | foreground #CDD6F4
13 | background #1E1E2E
14 | selection_foreground #1E1E2E
15 | selection_background #F5E0DC
16 |
17 | # Cursor colors
18 | cursor #F5E0DC
19 | cursor_text_color #1E1E2E
20 |
21 | # URL underline color when hovering with mouse
22 | url_color #F5E0DC
23 |
24 | # Kitty window border colors
25 | active_border_color #B4BEFE
26 | inactive_border_color #6C7086
27 | bell_border_color #F9E2AF
28 |
29 | # OS Window titlebar colors
30 | wayland_titlebar_color system
31 | macos_titlebar_color system
32 |
33 | # Tab bar colors
34 | active_tab_foreground #11111B
35 | active_tab_background #CBA6F7
36 | inactive_tab_foreground #CDD6F4
37 | inactive_tab_background #181825
38 | tab_bar_background #11111B
39 |
40 | # Colors for marks (marked text in the terminal)
41 | mark1_foreground #1E1E2E
42 | mark1_background #B4BEFE
43 | mark2_foreground #1E1E2E
44 | mark2_background #CBA6F7
45 | mark3_foreground #1E1E2E
46 | mark3_background #74C7EC
47 |
48 | # The 16 terminal colors
49 |
50 | # black
51 | color0 #45475A
52 | color8 #585B70
53 |
54 | # red
55 | color1 #F38BA8
56 | color9 #F38BA8
57 |
58 | # green
59 | color2 #A6E3A1
60 | color10 #A6E3A1
61 |
62 | # yellow
63 | color3 #F9E2AF
64 | color11 #F9E2AF
65 |
66 | # blue
67 | color4 #89B4FA
68 | color12 #89B4FA
69 |
70 | # magenta
71 | color5 #F5C2E7
72 | color13 #F5C2E7
73 |
74 | # cyan
75 | color6 #94E2D5
76 | color14 #94E2D5
77 |
78 | # white
79 | color7 #BAC2DE
80 | color15 #A6ADC8
81 |
82 |
--------------------------------------------------------------------------------
/waybar/style.css:
--------------------------------------------------------------------------------
1 |
2 | * {
3 | border: none;
4 | border-radius: 0;
5 | font-family: WeatherIcons, "icomoon\-feather", Iosevka;
6 | font-size: 15px;
7 | box-shadow: none;
8 | text-shadow: none;
9 | transition-duration: 0s;
10 | margin: 0px;
11 | }
12 |
13 | window {
14 | padding-top: 10px;
15 | color: rgba(217, 216, 216, 1);
16 | background: rgba(30, 30, 46, 1);
17 | }
18 |
19 |
20 |
21 | #workspaces {
22 | border-radius: 4px;
23 | background: rgba(30, 30, 46, 1);
24 | }
25 |
26 | #workspaces button {
27 | padding: 0 3px;
28 | color: #6272a4;
29 | }
30 |
31 |
32 | #workspaces button.persistent {
33 | color: #44475a;
34 | }
35 |
36 | #workspaces button.active {
37 | color: #8aadf4;
38 | }
39 |
40 | #workspaces button.urgent {
41 | color: #f38ba8;
42 | }
43 |
44 | #pulseaudio {
45 | color: #89dceb;
46 | }
47 |
48 | #pulseaudio.muted {
49 | color: #f38ba8;
50 | }
51 |
52 | #clock {
53 | color: #f38ba8;
54 | padding-right: 10;
55 | }
56 |
57 | #window {
58 | color: #fab387;
59 | }
60 |
61 | #custom-weather.display {
62 | color: #f5c2e7;
63 | }
64 |
65 | #custom-spotify.playing {
66 | color: #a6e3a1;
67 | }
68 |
69 | #custom-windowbutton-close {
70 | color: #f38ba8;
71 | }
72 |
73 | #custom-windowbutton-float {
74 | color: #89dceb;
75 | }
76 |
77 | #custom-windowbutton-fullscreen {
78 | color: #f9e2af;
79 | }
80 |
81 | #custom-sysmenu {
82 | padding-left: 5;
83 | color: #fab387;
84 | }
85 |
86 | #custom-spotify-prev {
87 | padding-right: 3px;
88 | color: #a6e3a1;
89 | }
90 |
91 | #custom-spotify-play-pause {
92 | color: #a6e3a1;
93 | }
94 |
95 | #custom-spotify-next {
96 | padding-left: 3px;
97 | color: #a6e3a1;
98 | }
99 |
100 | #language {
101 | color: #f9e2af;
102 | }
--------------------------------------------------------------------------------
/zsh/aliases.zsh:
--------------------------------------------------------------------------------
1 | alias ls='exa --color=always --group-directories-first --icons'
2 | alias lsa='exa -la --color=always --group-directories-first --icons'
3 | alias la='exa -a --color=always --group-directories-first --icons'
4 | alias ll='exa -l --color=always --group-directories-first --icons'
5 | alias lt='exa -aT --color=always --group-directories-first --icons'
6 | alias l.="exa --all --icons"
7 | alias ..='cd ..'
8 | alias ...='cd ../../'
9 | alias ....='cd ../../../'
10 | alias nano='nano -c -g -m'
11 | alias hi='figlet HELLO!!! | lolcat'
12 | alias ytmusic-dl='youtube-dl -f mp4 -x --audio-format mp3'
13 | alias neofetch_3='neofetch --config $HOME/.config/neofetch/config3.conf'
14 | alias neofetch='neofetch --config $HOME/.config/neofetch/config.conf'
15 | alias neofetch_2='neofetch --config $HOME/.config/neofetch/config2.conf'
16 | alias neofetch_1='neofetch --config $HOME/.config/neofetch/config1.conf'
17 | alias winfetch='neofetch --config $HOME/.config/neofetch/winfetch.conf'
18 | alias pls='sudo'
19 | alias matrix='neo-matrix -D'
20 | alias S='paru -S'
21 | alias Ss='pacman -Ss'
22 | alias Si='pacman -Si'
23 | alias R='paru -Rns'
24 | alias Syu='sudo pacman -Syu'
25 | alias Qs='paru -Qs'
26 | alias Qi='paru -Qi'
27 | alias ySi='paru -Si'
28 | alias ySs='paru -Ss'
29 | alias yay='paru'
30 | alias getgit='git config --get remote.origin.url'
31 | alias clock='tty-clock -s -c -C 4 -b'
32 | alias orphans='pacman -Qdtq && sudo pacman -Rs $(pacman -Qdtq)'
33 | alias conf='cd $HOME/.config'
34 | alias gitrepos='cd $HOME/Documents/git-repos'
35 | alias .h='cd /mnt/1tb-hdd/SteamLibrary/steamapps/common/Hades/'
36 | alias audio='pavucontrol'
37 | alias thunar='thunar &!'
38 | alias c='code'
39 | alias grep='grep --color=always'
40 | alias y='echo ":clown:"'
41 | alias tr='ls ~/.trash'
42 | alias trr='ranger ~/trash'
43 | alias cdz='cd $ZSH'
44 | alias packages='pacman -Qq > ~/packagelist.txt'
45 | alias space='duf'
46 | alias led='g512-led'
47 | alias rr='ranger'
48 | alias py='python'
49 | alias pgrep='pgrep -l'
50 |
--------------------------------------------------------------------------------
/zsh/zshrc:
--------------------------------------------------------------------------------
1 | zsh="$HOME/.config/zsh"
2 | ZSH="$HOME/.config/zsh"
3 | wynn="$HOME/polymc/instances/wynn-1.18/.minecraft/"
4 | GIT="$HOME/Documents/git-repos"
5 | git="$HOME/Documents/git-repos"
6 | HADES="/mnt/1tb-hdd/SteamLibrary/steamapps/common/Hades/"
7 | HISTSIZE=500000
8 | HISTFILE=$zsh/history
9 | SAVEHIST=500000
10 | setopt appendhistory
11 | setopt sharehistory
12 | setopt incappendhistory
13 |
14 | setopt autocd
15 |
16 | autoload -Uz compinit
17 | autoload -Uz colors && colors
18 | zstyle :compinstall filename '/home/george/.zshrc'
19 | compinit
20 |
21 | #aliases
22 | source $zsh/aliases.zsh
23 |
24 | #functions
25 | source $zsh/functions.zsh
26 |
27 | #custom binds
28 | bindkey '^H' backward-kill-word
29 | bindkey "^[[1;5C" forward-word
30 | bindkey "^[[1;5D" backward-word
31 | bindkey "\e[3~" delete-char
32 | bindkey "^z" undo
33 | bindkey -s '^[[1;5A' "sudo "
34 | bindkey -s '^[[1;5B' "update"
35 | bindkey '^[[A' history-substring-search-up
36 | bindkey '^[[B' history-substring-search-down
37 |
38 | # themes #
39 |
40 | #zsh
41 | source $zsh/theme.zsh
42 |
43 | #starship
44 | #eval "$(starship init zsh)"
45 |
46 |
47 | #paths
48 | source $zsh/paths.zsh
49 |
50 | # plugins #
51 | source $zsh/syntax-highlighting/zsh-syntax-highlighting.zsh ## https://github.com/zsh-users/zsh-syntax-highlighting
52 | source $zsh/autosuggestions/zsh-autosuggestions.zsh ## https://github.com/zsh-users/zsh-autosuggestions
53 | source $zsh/auto-ls/auto-ls.zsh ## https://github.com/Firewolf05/zsh-auto-ls
54 | source $zsh/zsh-history-substring-search/zsh-history-substring-search.zsh ## https://github.com/zsh-users/zsh-history-substring-search
55 |
56 | plugins () {
57 | en="\e[32m "
58 | dis="\e[31m "
59 | echo
60 | echo -e "\e[36mPlugins:"
61 | echo -e " $en ./zsh-syntax-highlighting"
62 | echo -e " $en ./zsh-autosuggestions"
63 | echo -e " $en ./auto-ls"
64 | echo -e " $en ./zsh-history-substring-search"
65 | echo -e " $dis ./oh-my-zsh"
66 | echo
67 | echo -e "\e[36mThemes:"
68 | echo -e " $dis ../starship"
69 | echo -e " $en ./theme.zsh"
70 | echo
71 | }
72 |
73 | catfetch
--------------------------------------------------------------------------------
/neofetch/config2.conf:
--------------------------------------------------------------------------------
1 |
2 | LC_ALL=C
3 | LANG=C
4 |
5 | print_info() {
6 | info " " title
7 | prin "$(color 7)┌────────────────────────────────┐"
8 | info " " distro
9 | info " " wm
10 | info " " shell
11 | info " " term
12 | info " 神" uptime
13 | info " " packages
14 | prin "$(color 7)└────────────────────────────────┘"
15 | prin "\n \n $(color 1) \n \n $(color 2) \n \n $(color 3) \n \n $(color 4) \n \n $(color 5) \n \n $(color 6) \n \n $(color 7) \n \n $(color 0) \n"
16 | }
17 |
18 | title_fqdn="off"
19 | kernel_shorthand="on"
20 | distro_shorthand="off"
21 | os_arch="off"
22 | uptime_shorthand="on"
23 | memory_percent="off"
24 | memory_unit="mib"
25 | package_managers="on"
26 | shell_path="off"
27 | shell_version="on"
28 | speed_type="bios_limit"
29 | speed_shorthand="off"
30 | cpu_brand="on"
31 | cpu_speed="on"
32 | cpu_cores="logical"
33 | cpu_temp="off"
34 | gpu_brand="on"
35 | gpu_type="all"
36 | refresh_rate="off"
37 | gtk_shorthand="off"
38 | gtk2="on"
39 | gtk3="on"
40 | public_ip_host="http://ident.me"
41 | public_ip_timeout=2
42 | de_version="on"
43 | disk_show=('/')
44 | disk_subtitle="mount"
45 | disk_percent="on"
46 | music_player="auto"
47 | song_format="%artist% - %album% - %title%"
48 | song_shorthand="off"
49 | mpc_args=()
50 | colors=(distro)
51 | bold="on"
52 | underline_enabled="on"
53 | underline_char="-"
54 | separator=" "
55 | block_range=(0 15)
56 | color_blocks="on"
57 | block_width=3
58 | block_height=1
59 | col_offset="auto"
60 | bar_char_elapsed="-"
61 | bar_char_total="="
62 | bar_border="on"
63 | bar_length=15
64 | bar_color_elapsed="distro"
65 | bar_color_total="distro"
66 | cpu_display="off"
67 | memory_display="off"
68 | battery_display="off"
69 | disk_display="off"
70 | image_backend="kitty"
71 | image_source="/home/george/Downloads/Archlinux-icon-crystal-64.svg.png"
72 | ascii_distro="Arch_small"
73 | ascii_colors=(distro)
74 | ascii_bold="on"
75 | image_loop="off"
76 | thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
77 | crop_mode="normal"
78 | crop_offset="center"
79 | image_size="200px"
80 | gap=3
81 | yoffset=0
82 | xoffset=0
83 | background_color=
84 | stdout="off"
85 |
--------------------------------------------------------------------------------
/rofi-own/clipmenu.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | bg0: #44475a69;
3 | bg1: #3B4252;
4 | bg2: #4C566A80;
5 | bg3: #b4befe;
6 | fg0: #D8DEE9;
7 | fg1: #ECEFF4;
8 | fg2: #D8DEE9;
9 | fg3: #4C566A;
10 | }
11 |
12 | * {
13 | font: "Roboto 12";
14 |
15 | background-color: transparent;
16 | text-color: @fg0;
17 |
18 | margin: 0px;
19 | padding: 0px;
20 | spacing: 0px;
21 | }
22 |
23 | window {
24 | location: center;
25 | width: 480;
26 | y-offset: -200;
27 | border: 2px;
28 | border-color: @bg3;
29 | border-radius: 24px;
30 |
31 | background-color: @bg0;
32 | }
33 |
34 | mainbox {
35 | padding: 12px;
36 | }
37 |
38 | inputbar {
39 | background-color: @bg0;
40 | border-color: @bg3;
41 |
42 | border: 2px;
43 | border-radius: 16px;
44 |
45 | padding: 8px 16px;
46 | spacing: 8px;
47 | children: [ prompt, entry ];
48 | }
49 |
50 | prompt {
51 | text-color: @fg2;
52 | }
53 |
54 | entry {
55 | placeholder: "Clipmenu";
56 | placeholder-color: @fg3;
57 | y-offset: 200;
58 | }
59 |
60 | message {
61 | margin: 12px 0 0;
62 | border-radius: 16px;
63 | border-color: @bg2;
64 | background-color: @bg2;
65 | }
66 |
67 | textbox {
68 | padding: 8px 24px;
69 | }
70 |
71 | listview {
72 | background-color: transparent;
73 |
74 | margin: 12px 0 0;
75 | lines: 8;
76 | columns: 1;
77 |
78 | fixed-height: false;
79 | }
80 |
81 | element {
82 | padding: 8px 16px;
83 | spacing: 8px;
84 | border-radius: 16px;
85 | }
86 |
87 | element normal active {
88 | text-color: @bg3;
89 | }
90 |
91 | element selected normal, element selected active {
92 | background-color: @bg3;
93 | }
94 |
95 | element-icon {
96 | size: 1em;
97 | vertical-align: 0.5;
98 | }
99 |
100 | element-text {
101 | text-color: inherit;
102 | }
103 |
104 | element selected {
105 | text-color: @bg1;
106 | }
--------------------------------------------------------------------------------
/scripts/volume:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | DIR="$HOME/.config/dunst/icons"
4 |
5 | function is_mute {
6 | amixer -D pipewire get Master | grep '%' | grep -oE '[^ ]+$' | grep off
7 | }
8 |
9 |
10 | function get_volume {
11 | if is_mute >/dev/null; then
12 | echo 0
13 | else
14 | amixer -D pipewire get Master | grep '%' | head -n 1 | awk -F'[' '{print $2}' | awk -F'%' '{print $1}'
15 | fi
16 | }
17 |
18 |
19 | function return_volume {
20 | volume=`get_volume`
21 | if [ "$volume" == 0 ] ; then
22 | echo "%{u#ed8796}%{F#ed8796} Muted"
23 | elif [ "$volume" -lt "10" ]; then
24 | echo "$volume%"
25 | elif [ "$volume" -lt "30" ]; then
26 | echo "$volume%"
27 | else
28 | echo " $volume%"
29 | fi
30 | }
31 |
32 | function send_notification {
33 | volume=`get_volume`
34 | if [ "$volume" = "0" ]; then
35 | icon_name="$DIR/volume-muted.svg"
36 | dunstify "Muted" -a Muted -t 2000 -i $icon_name -r 5555 -u normal
37 | else
38 | if [ "$volume" -lt "10" ]; then
39 | icon_name="$DIR/volume-low.svg"
40 | elif [ "$volume" -lt "30" ]; then
41 | icon_name="$DIR/volume-medium.svg"
42 | else
43 | icon_name="$DIR/volume-high.svg"
44 | fi
45 | dunstify "Volume" -a Volume -t 2000 -i $icon_name -r 5555 -u normal -h int:value:$(($volume))
46 | fi
47 | }
48 |
49 | if [[ $2 ]]; then
50 | amount=$2
51 | else
52 | amount="2"
53 | fi
54 |
55 |
56 | case $1 in
57 | up)
58 | amixer -D pipewire set Master on > /dev/null
59 | amixer -D pipewire set Master $amount%+ > /dev/null
60 | send_notification
61 | ;;
62 | down)
63 | amixer -D pipewire set Master on > /dev/null
64 | amixer -D pipewire set Master $amount%- > /dev/null
65 | send_notification
66 | ;;
67 | mute)
68 | amixer -D pipewire set Master 1+ toggle > /dev/null
69 | if is_mute ; then
70 | icon_name="$DIR/volume-muted.svg"
71 | dunstify "Muted" -a Muted -t 2000 -i $icon_name -r 5555 -u normal -h int:value:0
72 | else
73 | send_notification
74 |
75 | fi
76 | ;;
77 | get)
78 | return_volume
79 | ;;
80 | *)
81 | echo "Available options: up down mute get"
82 | esac
83 |
84 |
85 |
--------------------------------------------------------------------------------
/rofi-own/pmc.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | bg-col: #1e1e2e;
3 | bg-col-light: #1e1e2e;
4 | border-col: #1e1e2e;
5 | selected-col: #1e1e2e;
6 | blue: #89b4fa;
7 | fg-col: #cdd6f4;
8 | fg-col2: #f38ba8;
9 | grey: #6c7086;
10 |
11 | width: 600;
12 | font: "JetBrainsMono Nerd Font 14";
13 | }
14 |
15 | configuration {
16 | icon-theme: "Papirus";
17 | show-icons: true;
18 | }
19 |
20 | element-text, element-icon , mode-switcher {
21 | background-color: inherit;
22 | text-color: inherit;
23 | }
24 |
25 | window {
26 | height: 170px;
27 | border-color: @border-col;
28 | background-color: @bg-col;
29 | border: 2px;
30 | border-radius: 3px;
31 | border-color: @blue;
32 | }
33 |
34 | mainbox {
35 | background-color: @bg-col;
36 | }
37 |
38 | inputbar {
39 | children: [prompt,entry];
40 | background-color: @bg-col;
41 | border-radius: 5px;
42 | padding: 2px;
43 | }
44 |
45 | prompt {
46 | background-color: @blue;
47 | padding: 6px;
48 | text-color: @bg-col;
49 | border-radius: 3px;
50 | margin: 20px 0px 0px 20px;
51 | }
52 |
53 | textbox-prompt-colon {
54 | expand: false;
55 | str: ":";
56 | }
57 |
58 | entry {
59 | padding: 6px;
60 | margin: 20px 0px 0px 10px;
61 | text-color: @fg-col;
62 | background-color: @bg-col;
63 | }
64 |
65 | listview {
66 | border: 0px 0px 0px;
67 | padding: 6px 0px 0px;
68 | margin: 4px 0px 0px 20px;
69 | columns: 1;
70 | lines: 3;
71 | background-color: @bg-col;
72 | }
73 |
74 | element {
75 | padding: 5px;
76 | background-color: @bg-col;
77 | text-color: @fg-col ;
78 | }
79 |
80 | element-icon {
81 | size: 25px;
82 | }
83 |
84 | element selected {
85 | background-color: @selected-col ;
86 | text-color: @fg-col2 ;
87 | }
88 |
89 | mode-switcher {
90 | spacing: 0;
91 | }
92 |
93 | button {
94 | padding: 10px;
95 | background-color: @bg-col-light;
96 | text-color: @grey;
97 | vertical-align: 0.5;
98 | horizontal-align: 0.5;
99 | }
100 |
101 | button selected {
102 | background-color: @bg-col;
103 | text-color: @blue;
104 | }
105 |
106 |
--------------------------------------------------------------------------------
/polybar/bar/config.ini:
--------------------------------------------------------------------------------
1 | [global/wm]
2 |
3 | margin-bottom = 0
4 |
5 | margin-top = 0
6 |
7 | include-file = ~/.config/polybar/bar/modules.ini
8 | include-file = ~/.config/polybar/bar/colors.ini
9 |
10 |
11 | [bar/main]
12 |
13 | monitor = ${env:MONITOR}
14 |
15 | monitor-fallback =
16 |
17 | monitor-strict = false
18 |
19 | override-redirect = false
20 | wm-restack = bspwm
21 |
22 | bottom = false
23 |
24 | fixed-center = true
25 |
26 | #width = 100%:-12
27 | height = 30
28 |
29 | #offset-x = 4
30 | #offset-y = 4
31 |
32 | background = ${color.bgt}
33 |
34 | foreground = #FFFFFF
35 |
36 | #radius-top = 6.0
37 | #radius-bottom = 6.0
38 |
39 | #border-bottom = 1
40 |
41 | border-color = ${color.blue}
42 |
43 | line-size = 2
44 | line-color = #90282a36
45 |
46 | padding = 0
47 |
48 | module-margin-left = 0
49 | module-margin-right = 0
50 |
51 | font-0 = WeatherIcons:size=12;4
52 | font-1 = Iosevka:antialias=true:size=10;4
53 | font-2 = icomoon\-feather:antialias=true:size=12;4
54 | font-3 = DroidSansM Nerd Font:antialias=true:size=14;4
55 | font-4 = Sarasa Term Slab SC Semibold:size=11;4
56 | font-5 = font\-logos:size=12;4
57 |
58 | modules-left = sep sysmenu sep2 workspaces sep2 playerctl-display sep playerctl-spotify sep playerctl-youtube playerctl-resonance
59 | modules-center = title
60 | modules-right = sep menu-misc sep2 network sep2 keyboard sep2 appearance sep2 weather sep2 date sep2 pipewire sep2 tray-icon sep sep
61 |
62 | separator =
63 | dim-value = 1.0
64 | wm-name = bspwm
65 | locale =
66 |
67 | tray-position = none
68 | tray-detached = false
69 | tray-maxsize = 24
70 | tray-background = ${color.bgt}
71 | tray-offset-x = 0
72 | tray-offset-y = 0
73 | tray-padding = 0
74 | tray-scale = 1.0
75 |
76 | enable-ipc = true
77 |
78 | click-left =
79 | click-middle =
80 | click-right =
81 | scroll-up =
82 | scroll-down =
83 | double-click-left =
84 | double-click-middle =
85 | double-click-right =
86 | cursor-click =
87 | cursor-scroll =
88 |
89 | screenchange-reload = false
90 | compositing-background = source
91 | compositing-foreground = source
92 | compositing-overline = source
93 | compositing-underline = source
94 | compositing-border = source
95 | pseudo-transparency = false
96 |
97 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
98 |
--------------------------------------------------------------------------------
/rofi-own/wallpaper.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | bg-col: #1e1e2e;
3 | bg-col-light: #1e1e2e;
4 | border-col: #1e1e2e;
5 | selected-col: #1e1e2e;
6 | blue: #89b4fa;
7 | fg-col: #cdd6f4;
8 | fg-col2: #f38ba8;
9 | grey: #6c7086;
10 |
11 | width: 600;
12 | font: "JetBrainsMono Nerd Font 14";
13 | }
14 |
15 | configuration {
16 | icon-theme: "Papirus";
17 | show-icons: true;
18 | }
19 |
20 | element-text, element-icon , mode-switcher {
21 | background-color: inherit;
22 | text-color: inherit;
23 | }
24 |
25 | window {
26 | height: 170px;
27 | border-color: @border-col;
28 | background-color: @bg-col;
29 | border: 2px;
30 | border-radius: 3px;
31 | border-color: @blue;
32 | }
33 |
34 | mainbox {
35 | background-color: @bg-col;
36 | }
37 |
38 | inputbar {
39 | children: [prompt,entry];
40 | background-color: @bg-col;
41 | border-radius: 5px;
42 | padding: 2px;
43 | }
44 |
45 | prompt {
46 | background-color: @blue;
47 | padding: 6px;
48 | text-color: @bg-col;
49 | border-radius: 3px;
50 | margin: 20px 0px 0px 20px;
51 | }
52 |
53 | textbox-prompt-colon {
54 | expand: false;
55 | str: ":";
56 | }
57 |
58 | entry {
59 | padding: 6px;
60 | margin: 20px 0px 0px 10px;
61 | text-color: @fg-col;
62 | background-color: @bg-col;
63 | }
64 |
65 | listview {
66 | border: 0px 0px 0px;
67 | padding: 6px 0px 0px;
68 | margin: 4px 0px 0px 20px;
69 | columns: 1;
70 | lines: 3;
71 | background-color: @bg-col;
72 | }
73 |
74 | element {
75 | padding: 5px;
76 | background-color: @bg-col;
77 | text-color: @fg-col ;
78 | }
79 |
80 | element-icon {
81 | size: 25px;
82 | }
83 |
84 | element selected {
85 | background-color: @selected-col ;
86 | text-color: @fg-col2 ;
87 | }
88 |
89 | mode-switcher {
90 | spacing: 0;
91 | }
92 |
93 | button {
94 | padding: 10px;
95 | background-color: @bg-col-light;
96 | text-color: @grey;
97 | vertical-align: 0.5;
98 | horizontal-align: 0.5;
99 | }
100 |
101 | button selected {
102 | background-color: @bg-col;
103 | text-color: @blue;
104 | }
105 |
106 |
--------------------------------------------------------------------------------
/rofi-own/scripts/powermenu-2.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ## Author : Aditya Shakya (adi1090x)
4 | ## Github : @adi1090x
5 | #
6 | ## Rofi : Power Menu
7 | #
8 | ## Available Styles
9 | #
10 | ## style-1 style-2 style-3 style-4 style-5
11 |
12 | # Current Theme
13 | dir="$HOME/.config/rofi"
14 | theme='powermenu-2'
15 |
16 | # CMDs
17 | uptime="`uptime -p | sed -e 's/up //g'`"
18 | host=`hostname`
19 |
20 | # Options
21 | shutdown=''
22 | reboot=''
23 | lock=''
24 | suspend=''
25 | logout=''
26 | yes=''
27 | no=''
28 |
29 | # Rofi CMD
30 | rofi_cmd() {
31 | rofi -dmenu \
32 | -p "Uptime: $uptime" \
33 | -mesg "Uptime: $uptime" \
34 | -theme ${dir}/${theme}.rasi
35 | }
36 |
37 | # Confirmation CMD
38 |
39 | # Ask for confirmation
40 | confirm_exit() {
41 | echo -e "$yes\n$no" | confirm_cmd
42 | }
43 |
44 | # Pass variables to rofi dmenu
45 | run_rofi() {
46 | echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd
47 | }
48 |
49 | # Execute Command
50 | run_cmd() {
51 | selected="$(confirm_exit)"
52 | if [[ "$selected" == "$yes" ]]; then
53 | if [[ $1 == '--shutdown' ]]; then
54 | systemctl poweroff
55 | elif [[ $1 == '--reboot' ]]; then
56 | systemctl reboot
57 | elif [[ $1 == '--suspend' ]]; then
58 | mpc -q pause
59 | amixer set Master mute
60 | systemctl suspend
61 | elif [[ $1 == '--logout' ]]; then
62 | if [[ "$DESKTOP_SESSION" == 'openbox' ]]; then
63 | openbox --exit
64 | elif [[ "$DESKTOP_SESSION" == 'bspwm' ]]; then
65 | bspc quit
66 | elif [[ "$DESKTOP_SESSION" == 'i3' ]]; then
67 | i3-msg exit
68 | elif [[ "$DESKTOP_SESSION" == 'plasma' ]]; then
69 | qdbus org.kde.ksmserver /KSMServer logout 0 0 0
70 | fi
71 | fi
72 | else
73 | exit 0
74 | fi
75 | }
76 |
77 | # Actions
78 | chosen="$(run_rofi)"
79 | case ${chosen} in
80 | $shutdown)
81 | run_cmd --shutdown
82 | ;;
83 | $reboot)
84 | run_cmd --reboot
85 | ;;
86 | $lock)
87 | if [[ -x '/usr/bin/betterlockscreen' ]]; then
88 | betterlockscreen -l
89 | elif [[ -x '/usr/bin/i3lock' ]]; then
90 | i3lock
91 | fi
92 | ;;
93 | $suspend)
94 | run_cmd --suspend
95 | ;;
96 | $logout)
97 | run_cmd --logout
98 | ;;
99 | esac
100 |
--------------------------------------------------------------------------------
/rofi-own/scripts/apps.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ## Author : Aditya Shakya
4 | ## Mail : adi1090x@gmail.com
5 | ## Github : @adi1090x
6 | ## Twitter : @adi1090x
7 |
8 | dir="$HOME/.config/rofi"
9 | rofi_command="rofi -theme $dir/apps.rasi"
10 |
11 | # Links
12 | terminal=""
13 | files=""
14 | editor=""
15 | browser=""
16 | music=""
17 | settings=""
18 | launcher=""
19 |
20 | # Error msg
21 | msg() {
22 | rofi -theme "$dir/message.rasi" -e "$1"
23 | }
24 |
25 | # Variable passed to rofi
26 | options="$terminal\n$files\n$editor\n$browser\n$music\n$settings\n$launcher"
27 |
28 | chosen="$(echo -e "$options" | $rofi_command -p "Most Used" -dmenu -selected-row 0)"
29 | case $chosen in
30 | $terminal)
31 | if [[ -f /usr/bin/termite ]]; then
32 | termite &
33 | elif [[ -f /usr/bin/urxvt ]]; then
34 | urxvt &
35 | elif [[ -f /usr/bin/kitty ]]; then
36 | kitty &
37 | elif [[ -f /usr/bin/xterm ]]; then
38 | xterm &
39 | elif [[ -f /usr/bin/xfce4-terminal ]]; then
40 | xfce4-terminal &
41 | elif [[ -f /usr/bin/gnome-terminal ]]; then
42 | gnome-terminal &
43 | else
44 | msg "No suitable terminal found!"
45 | fi
46 | ;;
47 | $files)
48 | if [[ -f /usr/bin/thunar ]]; then
49 | thunar &
50 | elif [[ -f /usr/bin/pcmanfm ]]; then
51 | pcmanfm &
52 | else
53 | msg "No suitable file manager found!"
54 | fi
55 | ;;
56 | $editor)
57 | if [[ -f /usr/bin/geany ]]; then
58 | geany &
59 | elif [[ -f /usr/bin/leafpad ]]; then
60 | leafpad &
61 | elif [[ -f /usr/bin/mousepad ]]; then
62 | mousepad &
63 | elif [[ -f /usr/bin/code ]]; then
64 | code &
65 | else
66 | msg "No suitable text editor found!"
67 | fi
68 | ;;
69 | $browser)
70 | if [[ -f /usr/bin/firefox ]]; then
71 | firefox &
72 | elif [[ -f /usr/bin/chromium ]]; then
73 | chromium &
74 | elif [[ -f /usr/bin/midori ]]; then
75 | midori &
76 | else
77 | msg "No suitable web browser found!"
78 | fi
79 | ;;
80 | $music)
81 | if [[ -f /usr/bin/lxmusic ]]; then
82 | lxmusic &
83 | else
84 | spotify &
85 | fi
86 | ;;
87 | $settings)
88 | if [[ -f /usr/bin/xfce4-settings-manager ]]; then
89 | xfce4-settings-manager &
90 | else
91 | msg "No suitable settings manager found!"
92 | fi
93 | ;;
94 | $launcher)
95 | rofi -no-lazy-grab -show drun -modi drun,window -theme $HOME/.config/rofi/launcher.rasi
96 | ;;
97 | esac
98 |
99 |
--------------------------------------------------------------------------------
/rofi-own/catppuccin.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | bg-col: #1e1e2e;
3 | bg-col-light: #1e1e2e;
4 | border-col: #1e1e2e;
5 | selected-col: #1e1e2e;
6 | blue: #89b4fa;
7 | fg-col: #cdd6f4;
8 | fg-col2: #f38ba8;
9 | grey: #6c7086;
10 |
11 | width: 600;
12 | font: "JetBrainsMono Nerd Font 14";
13 | }
14 |
15 | configuration {
16 | icon-theme: "Papirus";
17 | show-icons: true;
18 | terminal: "kitty";
19 | drun-display-format: "{icon} {name}";
20 | location: 0;
21 | disable-history: false;
22 | hide-scrollbar: false;
23 | display-drun: " Apps ";
24 | display-run: " Run ";
25 | display-window: " Window";
26 | display-Network: " Network";
27 | sidebar-mode: true;
28 | }
29 |
30 | element-text, element-icon , mode-switcher {
31 | background-color: inherit;
32 | text-color: inherit;
33 | }
34 |
35 | window {
36 | height: 360px;
37 | border-color: @border-col;
38 | background-color: @bg-col;
39 | border: 2px;
40 | border-radius: 3px;
41 | border-color: @blue;
42 | }
43 |
44 | mainbox {
45 | background-color: @bg-col;
46 | }
47 |
48 | inputbar {
49 | children: [prompt,entry];
50 | background-color: @bg-col;
51 | border-radius: 5px;
52 | padding: 2px;
53 | }
54 |
55 | prompt {
56 | background-color: @blue;
57 | padding: 6px;
58 | text-color: @bg-col;
59 | border-radius: 3px;
60 | margin: 20px 0px 0px 20px;
61 | }
62 |
63 | textbox-prompt-colon {
64 | expand: false;
65 | str: ":";
66 | }
67 |
68 | entry {
69 | padding: 6px;
70 | margin: 20px 0px 0px 10px;
71 | text-color: @fg-col;
72 | background-color: @bg-col;
73 | }
74 |
75 | listview {
76 | border: 0px 0px 0px;
77 | padding: 6px 0px 0px;
78 | margin: 10px 0px 0px 20px;
79 | columns: 2;
80 | lines: 5;
81 | background-color: @bg-col;
82 | }
83 |
84 | element {
85 | padding: 5px;
86 | background-color: @bg-col;
87 | text-color: @fg-col ;
88 | }
89 |
90 | element-icon {
91 | size: 25px;
92 | }
93 |
94 | element selected {
95 | background-color: @selected-col ;
96 | text-color: @fg-col2 ;
97 | }
98 |
99 | mode-switcher {
100 | spacing: 0;
101 | }
102 |
103 | button {
104 | padding: 10px;
105 | background-color: @bg-col-light;
106 | text-color: @grey;
107 | vertical-align: 0.5;
108 | horizontal-align: 0.5;
109 | }
110 |
111 | button selected {
112 | background-color: @bg-col;
113 | text-color: @blue;
114 | }
115 |
116 |
--------------------------------------------------------------------------------
/rofi-own/clipmenu-2.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | bg-col: #1e1e2e;
3 | bg-col-light: #1e1e2e;
4 | border-col: #1e1e2e;
5 | selected-col: #1e1e2e;
6 | blue: #89b4fa;
7 | fg-col: #cdd6f4;
8 | fg-col2: #f38ba8;
9 | grey: #6c7086;
10 |
11 | width: 600;
12 | font: "JetBrainsMono Nerd Font 12";
13 | }
14 |
15 | configuration {
16 | icon-theme: "Papirus";
17 | show-icons: false;
18 | terminal: "kitty";
19 | drun-display-format: "{icon} {name}";
20 | location: 0;
21 | disable-history: false;
22 | hide-scrollbar: false;
23 | display-dmenu: " Clipboard";
24 | display-run: " Run ";
25 | display-clipboard: " Clipboard";
26 | display-Network: " Network";
27 | sidebar-mode: true;
28 | }
29 |
30 | element-text, element-icon , mode-switcher {
31 | background-color: inherit;
32 | text-color: inherit;
33 | }
34 |
35 | window {
36 | height: 360px;
37 | border-color: @border-col;
38 | background-color: @bg-col;
39 | border: 2px;
40 | border-radius: 3px;
41 | border-color: @blue;
42 | }
43 |
44 | mainbox {
45 | background-color: @bg-col;
46 | }
47 |
48 | inputbar {
49 | children: [prompt,entry];
50 | background-color: @bg-col;
51 | border-radius: 5px;
52 | padding: 2px;
53 | }
54 |
55 | prompt {
56 | background-color: @blue;
57 | padding: 6px;
58 | text-color: @bg-col;
59 | border-radius: 3px;
60 | margin: 20px 0px 0px 20px;
61 | }
62 |
63 | textbox-prompt-colon {
64 | expand: false;
65 | str: ":";
66 | }
67 |
68 | entry {
69 | padding: 6px;
70 | margin: 20px 0px 0px 10px;
71 | text-color: @fg-col;
72 | background-color: @bg-col;
73 | }
74 |
75 | listview {
76 | border: 0px 0px 0px;
77 | padding: 6px 0px 0px;
78 | margin: 10px 0px 0px 20px;
79 | columns: 1;
80 | lines: 5;
81 | background-color: @bg-col;
82 | }
83 |
84 | element {
85 | padding: 5px;
86 | background-color: @bg-col;
87 | text-color: @fg-col ;
88 | }
89 |
90 | element-icon {
91 | size: 25px;
92 | }
93 |
94 | element selected {
95 | background-color: @selected-col ;
96 | text-color: @fg-col2 ;
97 | }
98 |
99 | mode-switcher {
100 | spacing: 0;
101 | }
102 |
103 | button {
104 | padding: 10px;
105 | background-color: @bg-col-light;
106 | text-color: @grey;
107 | vertical-align: 0.5;
108 | horizontal-align: 0.5;
109 | }
110 |
111 | button selected {
112 | background-color: @bg-col;
113 | text-color: @blue;
114 | }
115 |
116 |
--------------------------------------------------------------------------------
/zsh/functions.zsh:
--------------------------------------------------------------------------------
1 | update () {
2 | echo
3 | echo -e "\e[32m:: Paru\e[0m"
4 | echo
5 | paru
6 | echo
7 | echo -e "\e[32m:: Flatpak\e[0m"
8 | echo
9 | flatpak update
10 | }
11 |
12 |
13 | class () {
14 | class=$(xprop WM_CLASS)
15 | echo $class
16 | copyq copy $class > /dev/null
17 | }
18 |
19 |
20 | dl () {
21 | file=${1##*/}
22 | echo $file
23 | curl -L -o $file $1
24 | }
25 |
26 | price () {
27 | curl -X GET moulberry.codes/lowestbin.json -s | jq ."${1:u}"
28 | }
29 |
30 |
31 | cltr () {
32 | echo -n "Are you sure you want to clear the trash folder? (yes/no): "
33 | read ans
34 | if [ $ans = "yes" ]; then
35 | /usr/bin/rm -r $HOME/.trash/*
36 | fi
37 | }
38 |
39 | rm () {
40 | for i in $@
41 | do
42 | fl=$HOME/.trash/$i
43 | x="1"
44 | while [ -f "$fl" ]
45 | do
46 | fl="$fl($x)"
47 | x=$((x+1))
48 | done
49 | mv $i $fl
50 | done
51 | }
52 |
53 |
54 | _test () {
55 | echo -e "\e[31merror:\e[0m Not testing anything currently"
56 | }
57 |
58 |
59 | chjv () {
60 | sudo archlinux-java set java-$1-openjdk
61 | }
62 |
63 | .r () {
64 | cd /mnt/1tb-hdd/SteamLibrary/steamapps/common/Hades/Content/ >/dev/null
65 | python modimporter.py
66 | cd - >/dev/null
67 | }
68 |
69 | clone () {
70 | cd $HOME/Documents/git-repos
71 | git clone $1
72 | cd ${1##*/}
73 | }
74 |
75 |
76 | function drag () {
77 | dragon-drop -x $@
78 | }
79 |
80 | function picoms () {
81 | pkill picom
82 | if [[ $1 == "anim" ]] then
83 | picom-animations --config ~/.config/picom/config.conf --experimental-backends &!
84 | echo "picom-animations" > ~/.picomlockfile
85 | elif [[ $1 == "norm" ]] then
86 | picom --config ~/.config/picom/config.conf --experimental-backends &!
87 | echo "picom" > ~/.picomlockfile
88 | fi
89 | }
90 |
91 | function neovim () {
92 | kitty sh -c "nvim $@"
93 | }
94 |
95 |
96 | #alias z='echo -e "\e[32m...Reloaded\e[0m" && zsh'
97 | alias z='_reload'
98 | _reload () {
99 | source $zsh/zshrc
100 | echo -e "\e[32m...Reloaded\e[0m"
101 | }
102 |
103 | gitclone () {
104 | git clone https://github.com/$@
105 | }
106 |
107 | __wynnpack () {
108 | mkdir /tmp/wynnpack
109 | cp $1 /tmp/wynnpack/$1
110 | dir=$(pwd)
111 | cd /tmp/wynnpack
112 | jar -xf $1
113 | del $1
114 | d=$(date '+%d-%m')
115 | df=$(date '+%a %b %d %H:%M')
116 | echo '{"pack":{"pack_format":8,"description":"§7WynnResourcePack - 2.0\n§a(1.18, '$df')"}}' > pack.mcmeta
117 | zip -r WynnPack-$d.zip assets/ pack.mcmeta pack.png
118 | mv WynnPack-$d.zip $dir/
119 | cd $dir
120 | del -r /tmp/wynnpack
121 | }
122 |
123 |
124 | math () {
125 | echo $(($@))
126 | }
127 |
--------------------------------------------------------------------------------
/rofi-own/apps.rasi:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | * Author : Aditya Shakya
4 | * Mail : adi1090x@gmail.com
5 | * Github : @adi1090x
6 | * Twitter : @adi1090x
7 | *
8 | */
9 |
10 | configuration {
11 | show-icons: false;
12 | disable-history: false;
13 | sidebar-mode: false;
14 | }
15 |
16 | * {
17 | accent: #b4befe;
18 | background: #181825;
19 | background-light: #1e1e2e;
20 | foreground: #E4E4E4;
21 | on: #44ad4d;
22 | off: #e34039;
23 | }
24 |
25 | * {
26 | background-color: @background;
27 | text-color: @foreground;
28 | }
29 |
30 | window {
31 | transparency: "real";
32 | border-radius: 12px;
33 | width: 100px;
34 | location: east;
35 | x-offset: -15px;
36 | y-offset: 0px;
37 | }
38 |
39 | listview {
40 | lines: 6;
41 | margin: 8px;
42 | spacing: 8px;
43 | cycle: true;
44 | dynamic: true;
45 | layout: vertical;
46 | }
47 |
48 | mainbox {
49 | background-color: @background;
50 | children: [ listview ];
51 | }
52 |
53 | element {
54 | background-color: @background-light;
55 | text-color: @foreground;
56 | orientation: vertical;
57 | border-radius: 12px;
58 | }
59 |
60 | element-text {
61 | background-color: inherit;
62 | text-color: inherit;
63 | font: "feather 20";
64 | expand: true;
65 | horizontal-align: 0.5;
66 | vertical-align: 0.5;
67 | margin: 26px 26px 26px 26px;
68 | }
69 |
70 | element normal.urgent,
71 | element alternate.urgent {
72 | background-color: @off;
73 | text-color: @background;
74 | border-radius: 10px;
75 | }
76 |
77 | element normal.active,
78 | element alternate.active {
79 | background-color: @on;
80 | text-color: @background;
81 | }
82 |
83 | element selected {
84 | background-color: @accent;
85 | text-color: @background;
86 | border: 0px;
87 | border-radius: 10px;
88 | border-color: @border;
89 | }
90 |
91 | element selected.urgent {
92 | background-color: @on;
93 | text-color: @background;
94 | }
95 |
96 | element selected.active {
97 | background-color: @off;
98 | color: @background;
99 | }
100 |
--------------------------------------------------------------------------------
/rofi-own/style.rasi:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | * Author : Aditya Shakya
4 | * Mail : adi1090x@gmail.com
5 | * Github : @adi1090x
6 | * Twitter : @adi1090x
7 | *
8 | */
9 |
10 | configuration {
11 | show-icons: false;
12 | disable-history: false;
13 | sidebar-mode: false;
14 | }
15 |
16 | * {
17 | accent: #b4befe;
18 | background: #181825;
19 | background-light: #1e1e2e;
20 | foreground: #E4E4E4;
21 | on: #44ad4d;
22 | off: #e34039;
23 | }
24 |
25 | * {
26 | background-color: @background;
27 | text-color: @foreground;
28 | }
29 |
30 | window {
31 | transparency: "real";
32 | border-radius: 12px;
33 | width: 100px;
34 | location: east;
35 | x-offset: -15px;
36 | y-offset: 0px;
37 | }
38 |
39 | listview {
40 | lines: 5;
41 | margin: 8px;
42 | spacing: 8px;
43 | cycle: true;
44 | dynamic: true;
45 | layout: vertical;
46 | }
47 |
48 | mainbox {
49 | background-color: @background;
50 | children: [ listview ];
51 | }
52 |
53 | element {
54 | background-color: @background-light;
55 | text-color: @foreground;
56 | orientation: vertical;
57 | border-radius: 12px;
58 | }
59 |
60 | element-text {
61 | background-color: inherit;
62 | text-color: inherit;
63 | font: "feather 20";
64 | expand: true;
65 | horizontal-align: 0.5;
66 | vertical-align: 0.5;
67 | margin: 26px 26px 26px 26px;
68 | }
69 |
70 | element normal.urgent,
71 | element alternate.urgent {
72 | background-color: @off;
73 | text-color: @background;
74 | border-radius: 10px;
75 | }
76 |
77 | element normal.active,
78 | element alternate.active {
79 | background-color: @on;
80 | text-color: @background;
81 | }
82 |
83 | element selected {
84 | background-color: @accent;
85 | text-color: @background;
86 | border: 0px;
87 | border-radius: 10px;
88 | border-color: @border;
89 | }
90 |
91 | element selected.urgent {
92 | background-color: @on;
93 | text-color: @background;
94 | }
95 |
96 | element selected.active {
97 | background-color: @off;
98 | color: @background;
99 | }
100 |
--------------------------------------------------------------------------------
/scripts/screenshot:
--------------------------------------------------------------------------------
1 | #!/usr/bin/zsh
2 |
3 | time=`date +%Y-%m-%d-%I-%M-%S`
4 | geometry=`xrandr | head -n1 | cut -d',' -f2 | tr -d '[:blank:],current'`
5 | dir="$HOME/Pictures/screenshots"
6 | file="Screenshot_${time}_${geometry}.png"
7 | copy-img () { copyq write image/png - < $dir/$file && copyq select 0 }
8 |
9 |
10 | # custom screenshot directories
11 | if [[ "$(current-window.sh)" == Minecraft* ]]; then
12 | dir="$HOME/.local/share/PrismLauncher/instances/wynn-1.19.3/.minecraft/screenshots"
13 | file=$(date +%Y-%m-%d_%H.%M.%S)_screenshot.png
14 | fi
15 |
16 | if [[ "$(current-window.sh)" == "Hades" ]]; then
17 | bspc desktop -l monocle
18 | bspc node -t tiled
19 | ACTION=$(dunstify -t 5000 --action="clicked,ACTION" 'Click here to save screenshot as a win')
20 | bspc node -t fullscreen
21 | case "$ACTION" in
22 | "clicked")
23 | dir="$HOME/Pictures/Hades"
24 | echo $(($(cat ~/Pictures/Hades/count)+1)) > ~/Pictures/Hades/count
25 | file="hades$(cat ~/Pictures/Hades/count).png"
26 | sleep 1
27 | ;;
28 | esac
29 | fi
30 |
31 | # notify
32 | notify_user () {
33 | if [ ! $(pgrep copyq) ]; then
34 | dunstify "CopyQ isnt running, screenshots wont be copied to the clickboard"
35 | fi
36 | if [[ -e "$dir/$file" ]]; then
37 | ACTION=$(dunstify -i $dir/$file --action="clicked,ACTION" 'Screenshot Saved')
38 | case "$ACTION" in
39 | "clicked")
40 | feh $dir/$file
41 | ;;
42 | esac
43 | else
44 | dunstify "Screenshot Deleted."
45 | if [ $dir = "$HOME/Pictures/Hades" ]; then
46 | echo $(($(cat ~/Pictures/Hades/count)-1)) > ~/Pictures/Hades/count
47 | fi
48 | fi
49 |
50 | }
51 |
52 | shotarea () {
53 | cd ${dir} && maim -u -f png -s "$file"
54 | copy-img
55 | notify_user
56 | }
57 |
58 | shotfreeze () {
59 | cd ${dir} && maim -u | feh -F - & maim -s "$file"
60 | copy-img
61 | pidof feh | { read first rest ; kill $first ; }
62 | notify_user
63 | }
64 |
65 | imgtotxt () {
66 | cd $dir && maim -u -f png -s "$file"
67 | tesseract $file text.tmp --psm 6 -l eng txt
68 | copyq copy "$(cat text.tmp.txt)"
69 | dunstify "Text copied"
70 | del text.tmp.txt
71 | }
72 |
73 |
74 | if [[ "$1" == "--area" ]]; then
75 | shotarea
76 | elif [[ "$1" == "--freeze" ]]; then
77 | shotfreeze
78 | elif [[ "$1" == "--img-to-text" ]]; then
79 | imgtotxt
80 | elif [[ "$1" == "--deps" ]]; then
81 | echo
82 | cat << EOF
83 | Dependencies:
84 | maim (screenshotting tool)
85 | copyq (tool used for clipboard)
86 | feh (used to open images/freeze option)
87 | dunst (for notifications)
88 | tesseract tesseract-data-eng (image to text tool)
89 | EOF
90 | echo
91 | elif [[ "$1" == "--install-deps" ]]; then
92 | echo maim copyq feh dunst tesseract-data-eng tesseract
93 | sudo pacman -Sy maim copyq feh dunst tesseract-data-eng tesseract
94 | else
95 | echo
96 | cat << EOF
97 | Available Options:
98 | --freeze Freezes the screen (using feh) before taking screenshot (might me weird with more than one screen)
99 | --area Takes screenshot using selection
100 | --img-to-text Image to text (experimental, might have issues with special characters)
101 | --deps Lists dependencies
102 | --install-deps Installs dependencies (Arch Linux)
103 | EOF
104 | echo
105 | fi
--------------------------------------------------------------------------------
/picom/config.conf:
--------------------------------------------------------------------------------
1 | #################################
2 | # Shadows #
3 | #################################
4 |
5 | shadow = false;
6 | #shadow-radius = 7;
7 | #shadow-offset-x = -7;
8 | #shadow-offset-y = -7;
9 | shadow-exclude = [
10 | "name = 'Notification'",
11 | "class_g = 'Conky'",
12 | "class_g ?= 'Notify-osd'",
13 | "class_g = 'Cairo-clock'",
14 | "_GTK_FRAME_EXTENTS@:c",
15 | "class_g = 'jgmenu'"
16 | ];
17 |
18 | #################################
19 | # Fading #
20 | #################################
21 |
22 | fading = false;
23 | fade-in-step = 0.07;
24 | fade-out-step = 0.07;
25 |
26 | #################################
27 | # Transparency / Opacity #
28 | #################################
29 |
30 | inactive-opacity = 1
31 | frame-opacity = 0.7
32 | inactive-opacity-override = false
33 | focus-exclude = [ "class_g = 'Cairo-clock'" ];
34 | opacity-rule = [
35 | "100:window_type = 'tooltip'",
36 | # "90:class_g = 'code-oss'",
37 | # "80:class_g = 'discord'",
38 | ]
39 |
40 | #################################
41 | # Corners #
42 | #################################
43 |
44 | #rounded-corners-exclude = [
45 | # "window_type = 'tooltip'",
46 | # "window_type = 'dock'",
47 | # "class_g = 'rofi'",
48 | # "class_g = 'Minecraft 1.12.2'",
49 | # "window_type = 'desktop'"
50 | #];
51 | #corner-radius = 5
52 | #round-borders = 8
53 |
54 | #################################
55 | # Background-Blurring #
56 | #################################
57 |
58 | blur-method = "dual_kawase";
59 | blur-exclude = ["class_g = 'eww'"]
60 | blur-strength = 8;
61 | blur-background = false;
62 | blur-background-frame = false;
63 | blurbackground-fixed = false;
64 | blur-background-exclude = [
65 | "class_g = 'slop'",
66 | "class_g = 'eww-bar'",
67 | "class_g = 'eww-calendar'",
68 | "class_g = 'stalonetray'",
69 | "window_type = 'menu'",
70 | "window_type = 'dropdown_menu'",
71 | "window_type = 'popup_menu'",
72 | "window_type = 'tooltip'",
73 | "class_g = 'firefox'"
74 | ];
75 |
76 |
77 | # Parameters for background blurring, see the *BLUR* section for more information.
78 |
79 | #################################
80 | # General Settings #
81 | #################################
82 |
83 | backend = "glx"
84 | vsync = true;
85 | mark-wmwin-focused = true;
86 | mark-ovredir-focused = true;
87 | detect-rounded-corners = true;
88 | detect-client-opacity = true;
89 | detect-transient = true;
90 | use-damage = true;
91 | transparent-clipping = false
92 | log-level = "warn";
93 | wintypes:
94 | {
95 | blur-background = false
96 | tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
97 | dock = { shadow = false; clip-shadow-above = true; }
98 | dnd = { shadow = false; }
99 | };
100 |
101 | #################################
102 | # Transitions #
103 | #################################
104 |
105 | transition-length = 250;
106 | transition-pow-x = 0.35;
107 | transition-pow-y = 0.1;
108 | size-transition = false;
109 | spawn-center = false;
110 | no-scale-down = false;
111 |
112 | #################################
113 | # Animations #
114 | #################################
115 |
116 | animations = true
117 | # `auto`, `none`, `fly-in`, `zoom`, `slide-down`, `slide-up`, `slide-left`, `slide-right` `slide-in`, `slide-out`
118 | animation-for-transient-window = "zoom"
119 | animation-for-open-window = "zoom"
120 | animation-for-unmap-window = "zoom"
121 | animation-for-menu-window = "zoom"
122 | animation-for-workspace-switch-out = "zoom"
123 | animation-for-workspace-switch-in = "zoom"
124 | animation-stiffness = 400;
125 | animation-dampening = 30;
126 | animation-window-mass = 0.8;
127 | animation-clamping = false;
128 | animation-delta = 16;
129 | animation-force-steps = true;
130 |
131 |
132 |
--------------------------------------------------------------------------------
/rofi-own/launcher.rasi:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | * Author : Aditya Shakya
4 | * Mail : adi1090x@gmail.com
5 | * Github : @adi1090x
6 | * Twitter : @adi1090x
7 | *
8 | */
9 |
10 | configuration {
11 | font: "Noto Sans Bold 10";
12 | show-icons: true;
13 | icon-theme: "Papirus";
14 | display-drun: "";
15 | display-window: "W";
16 | drun-display-format: "{name}";
17 | disable-history: false;
18 | sidebar-mode: false;
19 | }
20 |
21 | * {
22 | background: #00000000;
23 | background-alt: #00000000;
24 | background-bar: #f2f2f215;
25 | foreground: #f2f2f2EE;
26 | accent: #3DAEE966;
27 | }
28 |
29 | window {
30 | transparency: "real";
31 | background-color: #00000000;
32 | text-color: @foreground;
33 | border: 3px;
34 | border-color: #b4befe;
35 | border-radius: 12px;
36 | width: 40%;
37 | location: center;
38 | x-offset: 0;
39 | y-offset: 0;
40 | }
41 |
42 | prompt {
43 | enabled: true;
44 | padding: 0.30% 1% 0% -0.5%;
45 | background-color: @background-alt;
46 | text-color: @foreground;
47 | font: "FantasqueSansMono Nerd Font 12";
48 | }
49 |
50 | entry {
51 | background-color: @background-alt;
52 | text-color: @foreground;
53 | placeholder-color: @foreground;
54 | expand: true;
55 | horizontal-align: 0;
56 | placeholder: "Search";
57 | padding: 0.10% 0% 0% 0%;
58 | blink: true;
59 | }
60 |
61 | inputbar {
62 | children: [ prompt, entry ];
63 | background-color: @background-bar;
64 | text-color: @foreground;
65 | expand: false;
66 | border: 0% 0% 0% 0%;
67 | border-radius: 12px;
68 | border-color: @accent;
69 | margin: 0% 0% 0% 0%;
70 | padding: 1.5%;
71 | }
72 |
73 | listview {
74 | background-color: @background-alt;
75 | columns: 5;
76 | lines: 3;
77 | spacing: 0%;
78 | cycle: false;
79 | dynamic: true;
80 | layout: vertical;
81 | }
82 |
83 | mainbox {
84 | background-color: @background-alt;
85 | border: 0% 0% 0% 0%;
86 | border-radius: 0% 0% 0% 0%;
87 | border-color: @accent;
88 | children: [ inputbar, listview ];
89 | spacing: 2%;
90 | padding: 2% 1% 2% 1%;
91 | }
92 |
93 | element {
94 | background-color: @background-alt;
95 | text-color: @foreground;
96 | orientation: vertical;
97 | border-radius: 0%;
98 | padding: 2% 0% 2% 0%;
99 | }
100 |
101 | element-icon {
102 | background-color: @background;
103 | text-color: inherit;
104 | horizontal-align: 0.5;
105 | vertical-align: 0.5;
106 | size: 64px;
107 | border: 0px;
108 | }
109 |
110 | element-text {
111 | background-color: @background;
112 | text-color: inherit;
113 | expand: true;
114 | horizontal-align: 0.5;
115 | vertical-align: 0.5;
116 | margin: 0.5% 0.5% -0.5% 0.5%;
117 | }
118 |
119 | element selected {
120 | background-color: @background-bar;
121 | text-color: @foreground;
122 | border: 0% 0% 0% 0%;
123 | border-radius: 12px;
124 | border-color: @accent;
125 | }
126 |
--------------------------------------------------------------------------------
/rofi-own/powermenu.rasi:
--------------------------------------------------------------------------------
1 | /*
2 | *
3 | * Author : Aditya Shakya
4 | * Mail : adi1090x@gmail.com
5 | * Github : @adi1090x
6 | * Twitter : @adi1090x
7 | *
8 | */
9 |
10 | configuration {
11 | show-icons: false;
12 | font: "FantasqueSansMono Nerd Font";
13 | disable-history: false;
14 | sidebar-mode: false;
15 | }
16 |
17 |
18 | * {
19 | accent: #b4befe;
20 | background: #141c21;
21 | background-light: #00000000;
22 | foreground: #93a1a1;
23 | background-bar: #f2f2f215;
24 | on: #5BB462;
25 | off: #DE635E;
26 | text-color: #93a1a1;
27 | background-color: #00000000;
28 | }
29 |
30 |
31 |
32 | window {
33 | transparency: "real";
34 | background-color: #f2f2f215;
35 | text-color: @foreground;
36 | border: 3px;
37 | border-color: #b4befe;
38 | border-radius: 12px;
39 | width: 40%;
40 | location: center;
41 | x-offset: 0;
42 | y-offset: 0;
43 | }
44 |
45 | prompt {
46 | enabled: true;
47 | padding: 10px;
48 | background-color: #00000000;
49 | text-color: @accent;
50 | border: 0px 2px 0px 2px;
51 | border-radius: 12px;
52 | border-color: @accent;
53 | }
54 |
55 | textbox-prompt-colon {
56 | expand: false;
57 | str: " System ";
58 | background-color: @accent;
59 | text-color: @background;
60 | padding: 10px 10px 0px 10px;
61 | border-radius: 12px;
62 | }
63 |
64 | inputbar {
65 | children: [ textbox-prompt-colon, prompt ];
66 | spacing: 15px;
67 | background-color: #141c21;
68 | text-color: #f2f2f215;
69 | expand: false;
70 | border: 0px;
71 | border-radius: 12px;
72 | border-color: @accent;
73 | margin: 0px 0px 0px 0px;
74 | padding: 0px;
75 | position: center;
76 | }
77 |
78 | listview {
79 | columns: 5;
80 | lines: 1;
81 | spacing: 15px;
82 | cycle: true;
83 | dynamic: true;
84 | layout: vertical;
85 | }
86 |
87 | mainbox {
88 | background-color: #00000000;
89 | children: [ inputbar, listview ];
90 | spacing: 15px;
91 | margin: 40px;
92 | border-radius: 12px;
93 | }
94 |
95 | element {
96 | background-color: @background;
97 | text-color: @foreground;
98 | orientation: vertical;
99 | border-radius: 20px;
100 | }
101 |
102 | element-text {
103 | background-color: inherit;
104 | text-color: inherit;
105 | font: "feather 32";
106 | expand: true;
107 | horizontal-align: 0.5;
108 | vertical-align: 0.5;
109 | margin: 40px 0px 40px 0px;
110 | }
111 |
112 | element normal.urgent,
113 | element alternate.urgent {
114 | background-color: @off;
115 | text-color: #f2f2f215;
116 | border-radius: 20px;
117 | }
118 |
119 | element normal.active,
120 | element alternate.active {
121 | background-color: @on;
122 | text-color: @background;
123 | }
124 |
125 | element selected {
126 | background-color: @accent;
127 | text-color: @background;
128 | border: 0px;
129 | border-radius: 20px;
130 | border-color: #ffb86c;
131 | }
132 |
133 | element selected.urgent {
134 | background-color: @on;
135 | text-color: #f2f2f215;
136 | }
137 |
138 | element selected.active {
139 | background-color: @off;
140 | color: @background;
141 | }
142 |
--------------------------------------------------------------------------------
/waybar/modules/player.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | import argparse
3 | import logging
4 | import sys
5 | import signal
6 | import gi
7 | import json
8 | gi.require_version('Playerctl', '2.0')
9 | from gi.repository import Playerctl, GLib
10 |
11 | logger = logging.getLogger(__name__)
12 |
13 |
14 | def write_output(text, player):
15 | logger.info('Writing output')
16 |
17 | output = {'text': text,
18 | 'class': 'custom-' + player.props.player_name,
19 | 'alt': player.props.player_name}
20 |
21 | sys.stdout.write(json.dumps(output) + '\n')
22 | sys.stdout.flush()
23 |
24 |
25 | def on_play(player, status, manager):
26 | logger.info('Received new playback status')
27 | on_metadata(player, player.props.metadata, manager)
28 |
29 |
30 | def on_metadata(player, metadata, manager):
31 | logger.info('Received new metadata')
32 | track_info = ''
33 |
34 | if player.props.player_name == 'spotify' and \
35 | 'mpris:trackid' in metadata.keys() and \
36 | ':ad:' in player.props.metadata['mpris:trackid']:
37 | track_info = 'AD PLAYING'
38 | elif player.get_artist() != '' and player.get_title() != '':
39 | track_info = '{artist} - {title}'.format(artist=player.get_artist(),
40 | title=player.get_title())
41 | else:
42 | track_info = player.get_title()
43 |
44 | if player.props.status != 'Playing' and track_info:
45 | track_info = ' ' + track_info
46 | write_output(track_info, player)
47 |
48 |
49 | def on_player_appeared(manager, player, selected_player=None):
50 | if player is not None and (selected_player is None or player.name == selected_player):
51 | init_player(manager, player)
52 | else:
53 | logger.debug("New player appeared, but it's not the selected player, skipping")
54 |
55 |
56 | def on_player_vanished(manager, player):
57 | logger.info('Player has vanished')
58 | sys.stdout.write('\n')
59 | sys.stdout.flush()
60 |
61 |
62 | def init_player(manager, name):
63 | logger.debug('Initialize player: {player}'.format(player=name.name))
64 | player = Playerctl.Player.new_from_name(name)
65 | player.connect('playback-status', on_play, manager)
66 | player.connect('metadata', on_metadata, manager)
67 | manager.manage_player(player)
68 | on_metadata(player, player.props.metadata, manager)
69 |
70 |
71 | def signal_handler(sig, frame):
72 | logger.debug('Received signal to stop, exiting')
73 | sys.stdout.write('\n')
74 | sys.stdout.flush()
75 | # loop.quit()
76 | sys.exit(0)
77 |
78 |
79 | def parse_arguments():
80 | parser = argparse.ArgumentParser()
81 |
82 | # Increase verbosity with every occurrence of -v
83 | parser.add_argument('-v', '--verbose', action='count', default=0)
84 |
85 | # Define for which player we're listening
86 | parser.add_argument('--player')
87 |
88 | return parser.parse_args()
89 |
90 |
91 | def main():
92 | arguments = parse_arguments()
93 |
94 | # Initialize logging
95 | logging.basicConfig(stream=sys.stderr, level=logging.DEBUG,
96 | format='%(name)s %(levelname)s %(message)s')
97 |
98 | # Logging is set by default to WARN and higher.
99 | # With every occurrence of -v it's lowered by one
100 | logger.setLevel(max((3 - arguments.verbose) * 10, 0))
101 |
102 | # Log the sent command line arguments
103 | logger.debug('Arguments received {}'.format(vars(arguments)))
104 |
105 | manager = Playerctl.PlayerManager()
106 | loop = GLib.MainLoop()
107 |
108 | manager.connect('name-appeared', lambda *args: on_player_appeared(*args, arguments.player))
109 | manager.connect('player-vanished', on_player_vanished)
110 |
111 | signal.signal(signal.SIGINT, signal_handler)
112 | signal.signal(signal.SIGTERM, signal_handler)
113 | signal.signal(signal.SIGPIPE, signal.SIG_DFL)
114 |
115 | for player in manager.props.player_names:
116 | if arguments.player is not None and arguments.player != player.name:
117 | logger.debug('{player} is not the filtered player, skipping it'
118 | .format(player=player.name)
119 | )
120 | continue
121 |
122 | init_player(manager, player)
123 |
124 | loop.run()
125 |
126 |
127 | if __name__ == '__main__':
128 | main()
--------------------------------------------------------------------------------
/waybar/config:
--------------------------------------------------------------------------------
1 | {
2 | "layer": "top",
3 | "position": "top",
4 | "height": 30,
5 |
6 | "modules-left": [
7 | "custom/sysmenu", "custom/sep",
8 | "wlr/workspaces","custom/sep",
9 | "custom/spotify-prev",
10 | "custom/spotify-play-pause",
11 | "custom/spotify-next", "custom/spotify-sep",
12 | "custom/spotify"
13 | ],
14 | "modules-center": [
15 | "custom/windowbutton-close",
16 | "custom/windowbutton-fullscreen",
17 | "custom/windowbutton-float", "custom/windowbutton-sep",
18 | "hyprland/window"
19 | ],
20 | "modules-right": [
21 | "tray", "custom/sep",
22 | "hyprland/language", "custom/sep",
23 | "custom/weather", "custom/sep",
24 | "pulseaudio", "custom/sep",
25 | "clock"
26 | ],
27 | "hyprland/language": {
28 | "format": " {}",
29 | "format-en": "us",
30 | "format-gr": "gr",
31 | "keyboard-name": "logitech-g512-rgb-mechanical-gaming-keyboard",
32 | "on-click": "~/.config/waybar/modules/layoutswitch.sh"
33 | },
34 | "custom/sep": {
35 | "exec": "echo ' | '",
36 | "tooltip": false
37 | },
38 | "custom/windowbutton-close": {
39 | "interval": 1,
40 | "return-type": "json",
41 | "exec": "~/.config/waybar/modules/windowbutton.sh -cl",
42 | "tooltip": true,
43 | "on-click": "hyprctl dispatch killactive"
44 | },
45 | "custom/windowbutton-fullscreen": {
46 | "interval": 1,
47 | "return-type": "json",
48 | "exec": "~/.config/waybar/modules/windowbutton.sh -max",
49 | "tooltip": true,
50 | "on-click": "hyprctl dispatch fullscreen"
51 | },
52 | "custom/windowbutton-float": {
53 | "interval": 1,
54 | "return-type": "json",
55 | "exec": "~/.config/waybar/modules/windowbutton.sh -fl",
56 | "tooltip": true,
57 | "on-click": "hyprctl dispatch togglefloating ''"
58 | },
59 | "custom/windowbutton-sep": {
60 | "interval": 1,
61 | "exec": "echo ' | '",
62 | "exec-if": " ! [[ $(hyprctl activewindow) = 'Invalid' ]];"
63 | },
64 | "custom/sysmenu": {
65 | "interval": 60,
66 | "return-type": "json",
67 | "exec":"~/.config/waybar/modules/sysmenu.sh",
68 | "toolip": true,
69 | "on-click": "~/.config/rofi/powermenu/type-4/powermenu.sh",
70 | "on-click-right": "launcher"
71 | },
72 | "custom/spotify": {
73 | "interval": 1,
74 | "return-type": "json",
75 | "exec": "~/.config/waybar/modules/spotify.sh",
76 | "exec-if": "pgrep spotify",
77 | "escape": true,
78 | "on-click": "~/.config/waybar/modules/player-swap.sh"
79 | },
80 | "custom/spotify-prev": {
81 | "interval": 1,
82 | "return-type": "json",
83 | "exec": "~/.config/waybar/modules/spotify-buttons.sh -prev",
84 | "exec-if": "pgrep spotify",
85 | "on-click": "playerctl --player=spotify previous"
86 | },
87 | "custom/spotify-play-pause": {
88 | "interval": 1,
89 | "return-type": "json",
90 | "exec": "~/.config/waybar/modules/spotify-buttons.sh -p",
91 | "exec-if": "pgrep spotify",
92 | "on-click": "playerctl --player=spotify play-pause",
93 | "signal": 2
94 | },
95 | "custom/spotify-next": {
96 | "interval": 1,
97 | "return-type": "json",
98 | "exec": "~/.config/waybar/modules/spotify-buttons.sh -next",
99 | "exec-if": "pgrep spotify",
100 | "on-click": "playerctl --player=spotify next"
101 | },
102 | "custom/spotify-sep": {
103 | "interval": 1,
104 | "exec": "echo ' | '",
105 | "exec-if": "pgrep spotify"
106 | },
107 | "wlr/workspaces": {
108 | "format-icons": {
109 | "1": "",
110 | "2": "",
111 | "3": "",
112 | "4": "",
113 | "5": "",
114 | "6": "",
115 | "7": "",
116 | "8": "",
117 | "default": ""
118 | },
119 | "persistent_workspaces": {
120 | "1": [],
121 | "2": [],
122 | "3": [],
123 | "4": [],
124 | "5": [],
125 | "6": [],
126 | "7": [],
127 | "8": []
128 | },
129 | "active-only": "false",
130 | "on-click": "activate",
131 | "format": "{icon}",
132 | "disable-scroll": false,
133 | "sort-by-number": true
134 |
135 | },
136 | "hyprland/window": {
137 | "max-length": 80,
138 | "tooltip": false
139 | },
140 | "clock": {
141 | "format": "{: %I:%M %p}",
142 | "format-alt": "{: %a, %d %b %Y}",
143 | "tooltip": false
144 | },
145 | "pulseaudio": {
146 | "format-alt": "{icon}",
147 | "format": "{icon} {volume}%",
148 | "format-alt-click": "click-right",
149 | "format-muted": "",
150 | "format-icons": {
151 | "phone": [" ", " ", " ", " "],
152 | "default": ["", "", ""]
153 | },
154 | "on-click": "volume mute",
155 | "on-click-middle": "pavucontrol",
156 | "tooltip": false,
157 | "on-scroll-up" : "volume up",
158 | "on-scroll-down" : "volume down"
159 | },
160 | "custom/weather": {
161 | "interval": 1,
162 | "return-type": "json",
163 | "exec": "~/.config/waybar/modules/weather.sh"
164 | },
165 | "tray": {
166 | "spacing": 5,
167 | "icon-size": 18
168 | }
169 | }
170 |
--------------------------------------------------------------------------------
/bspwm/sxhkdrc:
--------------------------------------------------------------------------------
1 | ###############################################################################
2 | #### KEYBINDS ####
3 | ###############################################################################
4 |
5 | #while true; do sleep 1 && while cat ~/autoclicker; do xdotool click 1; done; done
6 | #if cat ~/autoclicker; then del ~/autoclicker; else touch ~/autoclicker; fi
7 |
8 | ####################
9 | #### BSPWM ####
10 | ####################
11 |
12 | super + k
13 | dunstify "$(xdotool getwindowname $(xdotool getactivewindow))"
14 |
15 | # change focus and move focused window #
16 | super + {_,shift + }{Left,Down,Up,Right}
17 | mode=$(bspc query -T -d | jq -r .layout); \
18 | [[ "$mode" == "tiled" ]] && bspc node --{focus,swap} {west,south,north,east}; \
19 | [[ "$mode" == "monocle" ]] && bspc node --{focus,swap} {prev,next,prev,next}.local
20 |
21 | # kill the focused window
22 | super + q
23 | bspc node -c
24 |
25 | super + ~button2
26 | bspc node -c
27 |
28 | # switch workspaces
29 | super + {1-9,0}
30 | bspc desktop -f {1-9,10}
31 |
32 | super + button{4,5}
33 | bspc desktop {next,prev}.occupied -f
34 |
35 | super + control + {Right,Left}
36 | bspc desktop {next,prev} -f
37 |
38 | # send window to workspace and switch #
39 | super + shift + {1-9,0}
40 | bspc node -d {1-9,10} --follow
41 |
42 | # floating #
43 | super + shift + space
44 | sh $HOME/.config/bspwm/scripts/floating.sh
45 |
46 | # fullscreen #
47 | super + f
48 | sh $HOME/.config/bspwm/scripts/fullscreen.sh
49 |
50 | # alternate between the tiled and monocle layout
51 | super + m
52 | bspc desktop -l next
53 |
54 | # vertical #
55 | super + v
56 | bspc node @parent -R 90
57 |
58 | # xkill #
59 | super + ctrl + x
60 | xkill
61 |
62 | # restart bspwm #
63 | super + shift + r
64 | bspc wm -r && pkill -USR1 -x sxhkd
65 |
66 | # restart polybar #
67 | super + r
68 | reload-pb
69 |
70 | # afk #
71 | super + Escape
72 | sh ~/.config/bspwm/scripts/afk.sh
73 |
74 | # change language #
75 | alt + Shift_L
76 | ~/scripts/bspwm/layoutswitch.sh
77 |
78 | # picom #
79 | super + control + c
80 | pgrep picom >/dev/null && pkill picom || $(cat ~/.picomlockfile) --config ~/.config/picom/config.conf --experimental-backends &
81 |
82 | # borders #
83 | #super + control + z
84 | # bash ~/.config/bspwm/scripts/borders.sh
85 |
86 | ####################
87 | #### APPS ####
88 | ####################
89 |
90 | # dunst history #
91 | super + grave
92 | while read; do dunstctl history-pop; done <<<$(dunstctl history|grep '"id" :')
93 |
94 | # keyboards #
95 | #super + s
96 | # bash ~/.config/bspwm/scripts/switch_kb.sh
97 |
98 | # color picker #
99 | super + p
100 | xcolor-pick
101 |
102 | # Screenshots #
103 | alt + s
104 | screenshot --area
105 |
106 | super + s
107 | screenshot --img-to-text
108 |
109 | alt +a
110 | flameshot screen
111 |
112 | super + shift + f
113 | flameshot launcher
114 |
115 | ~Print
116 | flameshot gui
117 |
118 | # rofi #
119 | #launcher
120 | super + space
121 | rofi -no-lazy-grab -show drun -modi drun,window -theme ~/.config/rofi-own/catppuccin.rasi
122 |
123 | #window
124 | super + a
125 | rofi -no-lazy-grab -show window -modi drun,window -theme ~/.config/rofi-own/catppuccin.rasi
126 |
127 | alt + Tab
128 | rofi -no-lazy-grab -show window -modi window -theme ~/.config/rofi-own/catppuccin.rasi
129 |
130 | #clipmenu-2 selection
131 | super + c
132 | CM_LAUNCHER=rofi clipmenu -theme $HOME/.config/rofi-own/clipmenu-2.rasi
133 |
134 | #clipmenu ctrl c
135 | super + shift + c
136 | rofi -modi "clipboard:greenclip print" -show clipboard -run-command '{cmd}' -theme ~/.config/rofi-own/clipmenu-2.rasi
137 |
138 | ~button2
139 | bspc query -D -d 'focused.!occupied' && launcher
140 |
141 | # terminal #
142 | super + Return
143 | kitty
144 |
145 | super + slash
146 | kitty --class=floating --config=$HOME/.config/kitty/floating.conf
147 |
148 | # prismlauncher #
149 | super + F1
150 | prismlauncher
151 |
152 | # steam #
153 | super + F2
154 | if pgrep steam; then steam -foreground; else steam & fi
155 | # discord #
156 | super + F3
157 | discord
158 |
159 | # firefox #
160 | super + F4
161 | firefox
162 |
163 | # spotify #
164 | super + F5
165 | spotify
166 |
167 | # thunar #
168 | #super + F1
169 | # thunar
170 |
171 | # jgmenu #
172 | ~button3
173 | bash ~/.config/bspwm/scripts/jgmenu.sh
174 |
175 | alt + button3
176 | jgmenud
177 |
178 | ~Alt_R
179 | jgmenud
180 |
181 | # thunderbird #
182 | XF86Mail
183 | thunderbird
184 |
185 | # calculator #
186 | XF86Calculator
187 | io.elementary.calculator
188 |
189 | XF86HomePage
190 | code ~/.config/bspwm/bspwmrc
191 |
192 | ####################
193 | #### OTHER ###
194 | ####################
195 |
196 | # volume #
197 | XF86Audio{Raise,Lower}Volume
198 | volume {up,down}
199 |
200 | XF86AudioMute
201 | volume mute
202 |
203 | # playerctl control #
204 | XF86AudioPlay
205 | playerctl $(cat ~/.module-playerctl) play-pause
206 |
207 | control + KP_Divide
208 | playerctl $(cat ~/.module-playerctl) play-pause
209 |
210 | XF86AudioNext
211 | playerctl $(cat ~/.module-playerctl) next
212 |
213 | XF86AudioPrev
214 | playerctl $(cat ~/.module-playerctl) previous
215 |
216 | XF86AudioStop
217 | playerctl $(cat ~/.module-playerctl) stop
218 |
219 | # power-menu #
220 | #1
221 | super + x
222 | $HOME/.config/rofi/powermenu/type-4/powermenu.sh
223 |
224 | #lock
225 | super + l
226 | betterlockscreen -l
227 |
228 | ########################
229 | #### COOL STUFF ###
230 | #######################
231 |
232 |
--------------------------------------------------------------------------------
/bspwm/bspwmrc:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | # ##############################################################################
4 | # # ENV VARS #
5 | # ##############################################################################
6 |
7 | #export PATH="/home/george/scripts"
8 | export GCM_CREDENTIAL_STORE=cache
9 | export BROWSER=firefox
10 | export EDITOR=code
11 | export TERMINAL=
12 | export _JAVA_AWT_WM_NONREPARENTING=1 # Fix for JetBrains IDEs
13 | export DOTNET_ROOT=~/.dotnet
14 | export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
15 |
16 | # ##############################################################################
17 | # # FUNCTIONS #
18 | # ##############################################################################
19 |
20 | rule() { bspc rule -a "$@" & }
21 | config() { bspc config "$@" & }
22 | monitor() { bspc monitor "$@" & }
23 | start() { pkill -x "$1"; { sleep 0.1; "$@" & }; }
24 | start_if() { pgrep -x $1 >/dev/null || $@ & }
25 | startup() { pgrep -i $1 >/dev/null || $@ & }
26 |
27 | # ##############################################################################
28 | # # GENERAL CONFIGURATION #
29 | # ##############################################################################
30 |
31 | config pointer_modifier Mod4
32 | config focus_follows_pointer true
33 | config single_monocle true
34 | config borderless_monocle true
35 | if [[ ! -f /tmp/borders ]]; then
36 | bspc config border_width 2
37 | del /tmp/borders
38 | fi
39 | config window_gap 0
40 | config top_padding 30
41 | config split_ratio 0.45
42 | config external_rules_command "$HOME/.config/bspwm/scripts/spotify.sh"
43 | config left_padding 0
44 | config bottom_padding 0
45 |
46 | # ##############################################################################
47 | # # WINDOW RULES #
48 | # ##############################################################################
49 |
50 | monitor HDMI-A-0 -d 1 2 3 4 5 6 7 8 9 10
51 | #monitor HDMI-A-0 -d 1 2 6 7 8
52 | #monitor HDMI-A-1 -d 3 4 5 9 10
53 |
54 | rule firefox desktop=4
55 | rule discord desktop=3
56 | rule Variety state=floating
57 | rule Pavucontrol state=floating
58 | rule Lxappearance state=floating
59 | rule Gpick state=floating
60 | rule Nm-connection-editor state=floating
61 | rule copyq state=floating
62 | rule Places state=floating
63 | rule "Primenote" state=floating
64 | bspc rule -a floating state=floating
65 | rule feh state=floating
66 | rule "Spotify" desktop=5
67 | rule Bitwarden state=floating
68 |
69 | rule "SkyClient (Forge 1.8.9)" desktop=2 border=off
70 | rule MultiMC desktop=2
71 | rule PolyMC desktop=2
72 | rule PrismLauncher desktop=2
73 | rule "Minecraft 1.8.9" desktop=2 border=off
74 | rule "Minecraft 1.12.2" desktop=2 border=off
75 | rule "Minecraft* 1.18.2" desktop=2 border=off
76 | rule "Minecraft* 1.19.3" desktop=2 border=off
77 | rule lunarclient desktop=2
78 | rule Steam desktop=2 q
79 | rule steam_app_1145360 desktop=2 border=off
80 | rule steam_app_444090 desktop=2
81 | rule steam_app_960090 desktop=2
82 | rule steam_proton desktop=2
83 | rule heroic desktop=2
84 | rule PortalWars-Linux-Shipping desktop=2 border=off
85 | rule Lutris desktop=2
86 |
87 | rule afk-1 desktop=8
88 | rule afk-2 desktop=10
89 |
90 | # ##############################################################################
91 | # # MISCELLANEOUS #
92 | # ##############################################################################
93 |
94 | config normal_border_color "#44475a"
95 | config active_border_color "#44475a"
96 | config focused_border_color "#b4befe"
97 | config presel_feedback_color "#b24744"
98 |
99 | # ##############################################################################
100 | # # STARTUP #
101 | # ##############################################################################
102 |
103 | #variety
104 | bash ~/.fehbg &
105 |
106 | #weather
107 | ntfd &
108 |
109 | #polybar
110 | exec ~/.config/polybar/scripts/multi-screens.sh &
111 |
112 | #picom
113 | #pgrep -x picom >/dev/null || picom --config ~/.config/picom/config.conf --experimental-backends &
114 | start_if picom --config ~/.config/picom/config.conf --experimental-backends
115 |
116 | #mouse settings
117 | xsetroot -cursor_name left_ptr &
118 | xinput set-prop 'Mice&MultiKB USB product Mice&MultiKB USB product' 'libinput Accel Speed' -0.7
119 |
120 | #keyboard layout
121 | setxkbmap -layout us,gr &
122 | $HOME/.config/bspwm/keyboard-colors &
123 | #g512-led -fx cwave keys 1a
124 |
125 | #clipman
126 | start clipmenud
127 | start greenclip daemon
128 | pgrep -x copyq >/dev/null || copyq &
129 |
130 | #dunst
131 | start dunst
132 | dunstify "Restarted" -a Bspwm -t 2000 --icon=/home/george/.config/bspwm/restart_icon.png
133 | #if [ -d /usr/share/icons/default ]; then dunstify -t 15000 "/usr/share/icons/default exists, cursor theme might not work properly" --icon=/home/george/.icons/Papirus-Dark/32x32/categories/bell.svg; fi
134 |
135 |
136 | #polkit
137 | start gnome-polkit
138 |
139 | #numlock
140 | numlockx on
141 |
142 | #Network Applet
143 | start nm-applet
144 |
145 | #sxhkd
146 | start sxhkd -c ~/.config/bspwm/sxhkdrc
147 |
148 | #brightness
149 | brightness-set $(cat /tmp/brightness-value) &
150 | #brightness-set 1
151 | #volume up
152 |
153 |
154 | ## Autostart ##
155 | startup discord
156 |
157 |
158 | while true; do sleep 1; if [[ ! $(cat /tmp/polybarDataSpotify) == $(playerctl --player=spotify metadata -f '{{artist}} - {{title}}') ]]; then echo "" > /tmp/polybarIconSpotify; polybar-msg action "#playerctl-spotify.hook.0" > /dev/null; fi; done &
159 |
160 |
161 |
162 |
--------------------------------------------------------------------------------
/stalonetrayrc:
--------------------------------------------------------------------------------
1 | # vim:filetype=config:tw=80:et
2 | #
3 | # This is sample ~/.stalonetrayrc, resembling default configuration.
4 | # Remember: command line parameters take precedence.
5 | #
6 | # Directives introduced in @VERSION_STR@ are marked with "NEW in @VERSION_STR@"
7 | #
8 | ####################################################################
9 | #
10 | # stalonetray understands following directives
11 | #
12 | ####################################################################
13 |
14 | # background # color can be specified as an HTML hex triplet or
15 | # as a name from rgb.txt, note that '#' must be quoted
16 | background "#282a36"
17 |
18 | # decorations # set trays window decorations; possible values for
19 | # decspec are: all, title, border, none
20 | decorations none
21 |
22 | # display # as usual
23 |
24 | # dockapp_mode # set dockapp mode, which can be either simple (for
25 | # e.g. OpenBox, wmaker for WindowMaker, or none
26 | # (default). NEW in @VERSION_STR@.
27 | dockapp_mode none
28 |
29 | # fuzzy_edges [] # enable fuzzy edges and set fuzziness level. level
30 | # can be from 0 (disabled) to 3; this setting works
31 | # with tinting and/or transparent and/or pixmap
32 | # backgrounds
33 | fuzzy_edges 3
34 |
35 | # geometry # tray's geometry in standard X notation; width and
36 | # height are specified in slot_size multiples
37 | geometry 1x1+2532+28
38 |
39 | # grow_gravity # one of N, S, E, W, NW, NE, SW, SE; tray will grow
40 | # in the direction opposite to one specified by
41 | # grow_gravity; if horizontal or vertical
42 | # direction is not specified, tray will not grow in
43 | # that direction
44 | grow_gravity NW
45 |
46 | # icon_gravity # icon placement gravity, one of NW, NE, SW, SE
47 | icon_gravity NW
48 |
49 | # icon_size # specifies dimensions of typical icon slot
50 | icon_size 22
51 |
52 | # log_level # controls the amount of logging output, level can
53 | # be err (default), info, or trace (enabled only
54 | # when stalonetray configured with --enable-debug)
55 | # NEW in @VERSION_STR@.
56 | log_level err
57 |
58 | # kludges kludge[,kludge] # enable specific kludges to work around
59 | # non-conforming WMs and/or stalonetray bugs.
60 | # NEW in @VERSION_STR@. Argument is a
61 | # comma-separated list of
62 | # * fix_window_pos - fix tray window position on
63 | # erroneous moves by WM
64 | # * force_icons_size - ignore resize events on all
65 | # icons; force their size to be equal to
66 | # icon_size
67 | # * use_icon_hints - use icon window hints to
68 | # dtermine icon size
69 |
70 | # max_geometry # maximal tray dimensions; 0 in width/height means
71 | # no limit
72 | max_geometry 0x0
73 |
74 | # no_shrink [] # disables shrink-back mode
75 | no_shrink false
76 |
77 | # parent_bg [] # whether to use pseudo-transparency
78 | # (looks better when reparented into smth like FvwmButtons)
79 | parent_bg false
80 |
81 | # pixmap_bg # use pixmap from specified xpm file for (tiled) background
82 | # pixmap_bg /home/user/.stalonetraybg.xpm
83 |
84 | # scrollbars # enable/disable scrollbars; mode is either
85 | # vertical, horizontal, all or none (default)
86 | # NEW in @VERSION_STR@.
87 | scrollbars none
88 |
89 | # scrollbars-size # scrollbars step in pixels; default is slot_size / 4
90 | # scrollbars-step 8
91 |
92 | # scrollbars-step # scrollbars step in pixels; default is slot_size / 2
93 | # scrollbars-step 32
94 |
95 | # slot_size # specifies size of icon slot, defaults to
96 | # icon_size NEW in @VERSION_STR@.
97 |
98 | # skip_taskbar [] # hide tray`s window from the taskbar
99 | skip_taskbar true
100 |
101 | # sticky [] # make a tray`s window sticky across the
102 | # desktops/pages
103 | sticky true
104 |
105 | # tint_color # set tinting color
106 | tint_color white
107 |
108 | # tint_level # set tinting level; level ranges from 0 (disabled)
109 | # to 255
110 | tint_level 0
111 |
112 | # transparent [] # whether to use root-transparency (background
113 | # image must be set with Esetroot or compatible utility)
114 | transparent false
115 |
116 | # vertical [] # whether to use vertical layout (horisontal layout
117 | # is used by default)
118 | vertical true
119 |
120 | # window_layer # set the EWMH-compatible window layer; one of:
121 | # bottom, normal, top
122 | window_layer normal
123 |
124 | # window_strut # enable/disable window struts for tray window (to
125 | # avoid converting of tray window by maximized
126 | # windows); mode defines to which screen border tray
127 | # will be attached; it can be either top, bottom,
128 | # left, right, none or auto (default)
129 | window_strut auto
130 |
131 | # window_type # set the EWMH-compatible window type; one of:
132 | # desktop, dock, normal, toolbar, utility
133 | window_type dock
134 |
135 | # xsync [] # whether to operate on X server synchronously (SLOOOOW)
136 | xsync false
137 |
138 |
--------------------------------------------------------------------------------
/rofi-own/powermenu-2.rasi:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Author : Aditya Shakya (adi1090x)
4 | * Github : @adi1090x
5 | *
6 | * Rofi Theme File
7 | * Rofi Version: 1.7.3
8 | **/
9 |
10 | /*****----- Configuration -----*****/
11 |
12 |
13 | configuration {
14 | show-icons: false;
15 | }
16 |
17 | * {
18 | font: "JetBrains Mono Nerd Font 12";
19 | }
20 |
21 | * {
22 | background: #1E1D2FFF;
23 | background-alt: #282839FF;
24 | foreground: #D9E0EEFF;
25 | selected: #7AA2F7FF;
26 | active: #ABE9B3FF;
27 | urgent: #F28FADFF;
28 | }
29 |
30 | /*****----- Global Properties -----*****/
31 | /** @import "shared/colors.rasi"
32 | #@import "shared/fonts.rasi"
33 | **/
34 | * {
35 | /* Resolution : 1920x1080 */
36 | box-spacing: 50px;
37 | box-margin: 370px 350px;
38 | message-margin: 0px 350px;
39 | inputbar-spacing: 0px;
40 | list-spacing: 50px;
41 | general-padding: 20px;
42 | element-padding: 55px 10px;
43 | element-radius: 20px;
44 | general-radius: 100%;
45 | element-font: "feather 48";
46 | }
47 |
48 | /*****----- Main Window -----*****/
49 | window {
50 | /* properties for window widget */
51 | transparency: "real";
52 | location: center;
53 | anchor: center;
54 | fullscreen: true;
55 | width: 1366px;
56 | x-offset: 0px;
57 | y-offset: 0px;
58 |
59 | /* properties for all widgets */
60 | enabled: true;
61 | margin: 0px;
62 | padding: 0px;
63 | border: 0px solid;
64 | border-radius: 0px;
65 | border-color: @selected;
66 | cursor: "default";
67 | background-color: @background;
68 | }
69 |
70 | /*****----- Main Box -----*****/
71 | mainbox {
72 | enabled: true;
73 | spacing: var(box-spacing);
74 | margin: 0px;
75 | padding: var(box-margin);
76 | border: 0px solid;
77 | border-radius: 0px;
78 | border-color: @selected;
79 | background-color: transparent;
80 | children: [ "message", "listview" ];
81 | }
82 |
83 | /*****----- Inputbar -----*****/
84 | inputbar {
85 | enabled: true;
86 | spacing: var(inputbar-spacing);
87 | margin: 0px;
88 | padding: 0px;
89 | border: 0px;
90 | border-radius: 0px;
91 | border-color: @selected;
92 | background-color: transparent;
93 | text-color: @foreground;
94 | children: [ "dummy", "textbox-prompt-colon", "prompt", "dummy"];
95 | }
96 |
97 | dummy {
98 | background-color: transparent;
99 | }
100 |
101 | textbox-prompt-colon {
102 | enabled: true;
103 | expand: false;
104 | str: "SYSTEM";
105 | padding: var(general-padding);
106 | border-radius: var(general-radius);
107 | background-color: @urgent;
108 | text-color: @background;
109 | }
110 | prompt {
111 | enabled: true;
112 | padding: var(general-padding);
113 | border-radius: var(general-radius);
114 | background-color: @active;
115 | text-color: @background;
116 | }
117 |
118 | /*****----- Message -----*****/
119 | message {
120 | enabled: true;
121 | margin: var(message-margin);
122 | padding: var(general-padding);
123 | border: 0px;
124 | border-radius: var(general-radius);
125 | border-color: @selected;
126 | background-color: @background-alt;
127 | text-color: @foreground;
128 | }
129 | textbox {
130 | background-color: inherit;
131 | text-color: inherit;
132 | vertical-align: 0.5;
133 | horizontal-align: 0.5;
134 | placeholder-color: @foreground;
135 | blink: true;
136 | markup: true;
137 | }
138 | error-message {
139 | padding: var(general-padding);
140 | border: 0px solid;
141 | border-radius: var(general-radius);
142 | border-color: @selected;
143 | background-color: @background;
144 | text-color: @foreground;
145 | }
146 |
147 | /*****----- Listview -----*****/
148 | listview {
149 | enabled: true;
150 | columns: 5;
151 | lines: 1;
152 | cycle: true;
153 | dynamic: true;
154 | scrollbar: false;
155 | layout: vertical;
156 | reverse: false;
157 | fixed-height: true;
158 | fixed-columns: true;
159 |
160 | spacing: var(list-spacing);
161 | margin: 0px;
162 | padding: 0px;
163 | border: 0px solid;
164 | border-radius: 0px;
165 | border-color: @selected;
166 | background-color: transparent;
167 | text-color: @foreground;
168 | cursor: "default";
169 | }
170 |
171 | /*****----- Elements -----*****/
172 | element {
173 | enabled: true;
174 | spacing: 0px;
175 | margin: 0px;
176 | padding: var(element-padding);
177 | border: 0px solid;
178 | border-radius: var(element-radius);
179 | border-color: @selected;
180 | background-color: @background-alt;
181 | text-color: @foreground;
182 | cursor: pointer;
183 | }
184 | element-text {
185 | font: var(element-font);
186 | background-color: transparent;
187 | text-color: inherit;
188 | cursor: inherit;
189 | vertical-align: 0.5;
190 | horizontal-align: 0.5;
191 | }
192 | element selected.normal {
193 | background-color: var(selected);
194 | text-color: var(background);
195 | }
196 |
--------------------------------------------------------------------------------
/hypr/hyprland.conf:
--------------------------------------------------------------------------------
1 | # This is an example Hyprland config file.
2 | #
3 | # Refer to the wiki for more information.
4 |
5 | #
6 | # Please note not all available settings / options are set here.
7 | # For a full list, see the wiki
8 | #
9 |
10 | # See https://wiki.hyprland.org/Configuring/Monitors/
11 | monitor=,2560x1080@75,0x0,1
12 |
13 |
14 | # See https://wiki.hyprland.org/Configuring/Keywords/ for more
15 |
16 | # Execute your favorite apps at launch
17 | # exec-once = waybar & hyprpaper & firefox
18 |
19 | # Source a file (multi-file configs)
20 | # source = ~/.config/hypr/myColors.conf
21 |
22 | # For all categories, see https://wiki.hyprland.org/Configuring/Variables/
23 | input {
24 | kb_layout = us,gr
25 | kb_options = grp:alt_shift_toggle
26 | numlock_by_default = true
27 | follow_mouse = 1
28 |
29 | touchpad {
30 | natural_scroll = no
31 | }
32 |
33 | sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
34 | }
35 |
36 | general {
37 | # See https://wiki.hyprland.org/Configuring/Variables/ for more
38 |
39 | gaps_in = 1
40 | gaps_out = 1
41 | border_size = 2
42 | col.active_border = rgb(cba6f7)
43 | col.inactive_border = rgba(595959aa)
44 |
45 | layout = dwindle
46 | }
47 |
48 | decoration {
49 | # See https://wiki.hyprland.org/Configuring/Variables/ for more
50 |
51 | rounding = 3
52 | blur = yes
53 | blur_size = 10
54 | blur_passes = 1
55 | blur_new_optimizations = on
56 |
57 | drop_shadow = yes
58 | shadow_range = 4
59 | shadow_render_power = 3
60 | col.shadow = rgba(1a1a1aee)
61 | }
62 |
63 | animations {
64 | enabled = yes
65 |
66 | # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
67 |
68 | bezier = myBezier, 0.05, 0.9, 0.1, 1.05
69 |
70 | animation = windows, 1, 7, myBezier
71 | animation = windowsOut, 1, 7, default, popin 40%
72 | animation = border, 1, 10, default
73 | animation = fade, 1, 7, default
74 | animation = workspaces, 1, 6, default
75 | }
76 |
77 | dwindle {
78 | # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
79 | pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
80 | preserve_split = yes # you probably want this
81 | no_gaps_when_only = true
82 | split_width_multiplier = 2
83 | force_split = 2
84 | }
85 |
86 | master {
87 | # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
88 | new_is_master = false
89 | no_gaps_when_only = true
90 | orientation = right
91 | allow_small_split = true
92 | }
93 |
94 | gestures {
95 | # See https://wiki.hyprland.org/Configuring/Variables/ for more
96 | workspace_swipe = off
97 | }
98 |
99 | # Example per-device config
100 | # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
101 | device:mice&multikb-usb-product-mice&multikb-usb-product {
102 | sensitivity = -0.7
103 | }
104 |
105 | misc {
106 | focus_on_activate = 1
107 | }
108 |
109 | # Example windowrule v1
110 | # windowrule = float, ^(kitty)$
111 | # Example windowrule v2
112 | # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
113 | # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
114 |
115 | windowrule = float, floating
116 |
117 | windowrule = workspace 2, steam
118 | windowrule = workspace 2, PortalWars-Linux-Shipping
119 | windowrule = workspace 2, org.prismlauncher.PrismLauncher
120 | windowrule = workspace 2, *SkyClient*
121 |
122 | windowrule = workspace 3, discord
123 | windowrule = workspace 4, firefox
124 | windowrule = workspace 5, Spotify
125 |
126 |
127 | #Apps
128 | exec = $HOME/.config/waybar/waybar.sh
129 | exec = copyq --start-server
130 | exec-once = swaybg -m fill -i $(cat ~/.lastwallpaper-wl)
131 | exec-once = $HOME/.config/bspwm/keyboard-colors
132 | exec = ntfd
133 |
134 |
135 | exec-once = wl-paste --watch cliphist store
136 |
137 | # See https://wiki.hyprland.org/Configuring/Keywords/ for more
138 | $mod = SUPER
139 | $scripts = ~/.config/hypr/scripts
140 |
141 | # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
142 | bind = $mod, Return, exec, kitty
143 | bind = $mod, slash, exec, kitty --class=floating --config=$HOME/.config/kitty/floating.conf
144 | bind = $mod, Q, killactive,
145 | bind = $mod, M, exit,
146 | bind = SUPER_SHIFT, space, togglefloating,
147 | bind = $mod, space, exec, launcher
148 | bind = $mod, K, pseudo, # dwindle
149 | bind = $mod, J, togglesplit, # dwindle
150 | bind = SUPER_SHIFT, R, exec, hyprctl reload
151 | bind = SUPER_SHIFT, E, exec, dunstify -t 2000 :angy:
152 | bind = $mod, F, fullscreen
153 | bind = SUPER_SHIFT, F, fullscreen, 1
154 | bind = SUPER_CTRL, C, exec, ~/.config/hypr/scripts/toggle_blur.sh
155 | bind =, SHIFT_ALT, exec, ~/.config/waybar/modules/layoutswitch.sh
156 |
157 | # Move focus with mainMod + arrow keys
158 | bind = $mod, left, movefocus, l
159 | bind = $mod, right, movefocus, r
160 | bind = $mod, up, movefocus, u
161 | bind = $mod, down, movefocus, d
162 |
163 | # Move window to direction
164 | bind = SUPER_SHIFT, left, movewindow, l
165 | bind = SUPER_SHIFT, right, movewindow, r
166 | bind = SUPER_SHIFT, up, movewindow, u
167 | bind = SUPER_SHIFT, down, movewindow, d
168 |
169 | # Switch workspaces with mainMod + [0-9]
170 | bind = $mod, 1, workspace, 1
171 | bind = $mod, 2, workspace, 2
172 | bind = $mod, 3, workspace, 3
173 | bind = $mod, 4, workspace, 4
174 | bind = $mod, 5, workspace, 5
175 | bind = $mod, 6, workspace, 6
176 | bind = $mod, 7, workspace, 7
177 | bind = $mod, 8, workspace, 8
178 | bind = $mod, 9, workspace, 9
179 | bind = $mod, 0, workspace, 10
180 |
181 | # Move active window to a workspace with mainMod + SHIFT + [0-9]
182 | bind = $mod SHIFT, 1, movetoworkspace, 1
183 | bind = $mod SHIFT, 2, movetoworkspace, 2
184 | bind = $mod SHIFT, 3, movetoworkspace, 3
185 | bind = $mod SHIFT, 4, movetoworkspace, 4
186 | bind = $mod SHIFT, 5, movetoworkspace, 5
187 | bind = $mod SHIFT, 6, movetoworkspace, 6
188 | bind = $mod SHIFT, 7, movetoworkspace, 7
189 | bind = $mod SHIFT, 8, movetoworkspace, 8
190 | bind = $mod SHIFT, 9, movetoworkspace, 9
191 | bind = $mod SHIFT, 0, movetoworkspace, 10
192 |
193 | # Scroll through existing workspaces with mainMod + scroll
194 | bind = $mod, mouse_down, workspace, e+1
195 | bind = $mod, mouse_up, workspace, e-1
196 |
197 | # Move/resize windows with mainMod + LMB/RMB and dragging
198 | bindm = $mod, mouse:272, movewindow
199 | bindm = $mod, mouse:273, resizewindow
200 |
201 | ## Custom binds
202 |
203 | # rofi menus
204 | bind = $mod, X, exec, $HOME/.config/rofi/powermenu/type-4/powermenu.sh
205 | bind = $mod, C, exec, rofi -modi clipboard:$HOME/.config/rofi-own/scripts/cliphist.sh -show clipboard -theme ~/.config/rofi-own/clipmenu-2.rasi
206 |
207 | bind = ALT, S, exec, screenshot-wayland --area
208 | bind = $mod, S, exec, screenshot-wayland --img-to-text
209 | bind = $mod, P, exec, $scripts/color_picker.sh
210 |
211 | bind = $mod, F1, exec, prism
212 | bind = $mod, F2, exec, steam
213 | bind = $mod, F3, exec, discord --enable-features=UseOzonePlatform --ozone-platform=wayland
214 | bind = $mod, F4, exec, firefox
215 | bind = $mod, F5, exec, spotify
216 |
217 | bind =, XF86AudioRaiseVolume, exec, volume up
218 | bind =, XF86AudioLowerVolume, exec, volume down
219 | bind =, XF86AudioMute, exec, volume mute
220 |
221 | bind =, XF86AudioPlay, exec, playerctl play-pause
222 | bind =, XF86AudioNext, exec, playerctl next
223 | bind =, XF86AudioPrev, exec, playerctl previous
224 | bind =, XF86AudioStop, exec, playerctl stop
225 |
226 |
227 |
--------------------------------------------------------------------------------
/dunst/dunstrc:
--------------------------------------------------------------------------------
1 | # See dunst(5) for all configuration options
2 |
3 | [global]
4 | ### Display ###
5 |
6 | # Which monitor should the notifications be displayed on.
7 | monitor = 0
8 |
9 | # Display notification on focused monitor. Possible modes are:
10 | # mouse: follow mouse pointer
11 | # keyboard: follow window with keyboard focus
12 | # none: don't follow anything
13 | #
14 | # "keyboard" needs a window manager that exports the
15 | # _NET_ACTIVE_WINDOW property.
16 | # This should be the case for almost all modern window managers.
17 | #
18 | # If this option is set to mouse or keyboard, the monitor option
19 | # will be ignored.
20 | follow = none
21 |
22 | ### Geometry ###
23 |
24 | # dynamic width from 0 to 300
25 | # width = (0, 300)
26 | # constant width of 300
27 | width = (0, 300)
28 |
29 | # The maximum height of a single notification, excluding the frame.
30 | height = 300
31 |
32 | # Position the notification in the top right corner
33 | origin = top-right
34 |
35 | # Offset from the origin
36 | #offset = 10x50
37 |
38 | # Scale factor. It is auto-detected if value is 0.
39 | scale = 0
40 |
41 | # Maximum number of notification (0 means no limit)
42 | notification_limit = 0
43 |
44 | ### Progress bar ###
45 |
46 | # Turn on the progess bar. It appears when a progress hint is passed with
47 | # for example dunstify -h int:value:12
48 | progress_bar = true
49 |
50 | # Set the progress bar height. This includes the frame, so make sure
51 | # it's at least twice as big as the frame width.
52 | progress_bar_height = 10
53 |
54 | # Set the frame width of the progress bar
55 | progress_bar_frame_width = 1
56 |
57 | # Set the minimum width for the progress bar
58 | progress_bar_min_width = 150
59 |
60 | # Set the maximum width for the progress bar
61 | progress_bar_max_width = 300
62 |
63 |
64 | # Show how many messages are currently hidden (because of
65 | # notification_limit).
66 | indicate_hidden = yes
67 |
68 | # The transparency of the window. Range: [0; 100].
69 | # This option will only work if a compositing window manager is
70 | # present (e.g. xcompmgr, compiz, etc.). (X11 only)
71 | transparency = 20
72 |
73 | # Draw a line of "separator_height" pixel height between two
74 | # notifications.
75 | # Set to 0 to disable.
76 | separator_height = 1
77 |
78 | # Padding between text and separator.
79 | padding = 7
80 |
81 | # Horizontal padding.
82 | horizontal_padding = 10
83 |
84 | # Padding between text and icon.
85 | text_icon_padding = 0
86 |
87 | # Defines width in pixels of frame around the notification window.
88 | # Set to 0 to disable.
89 | frame_width = 2
90 |
91 | # Defines color of the frame around the notification window.
92 | #frame_color = ""
93 |
94 | # Define a color for the separator.
95 | # possible values are:
96 | # * auto: dunst tries to find a color fitting to the background;
97 | # * foreground: use the same color as the foreground;
98 | # * frame: use the same color as the frame;
99 | # * anything else will be interpreted as a X color.
100 | separator_color = auto
101 |
102 | # Sort messages by urgency.
103 | sort = yes
104 |
105 | # Don't remove messages, if the user is idle (no mouse or keyboard input)
106 | # for longer than idle_threshold seconds.
107 | # Set to 0 to disable.
108 | # A client can set the 'transient' hint to bypass this. See the rules
109 | # section for how to disable this if necessary
110 | idle_threshold = 120
111 |
112 | ### Text ###
113 |
114 | font = Monospace 10
115 |
116 | # The spacing between lines. If the height is smaller than the
117 | # font height, it will get raised to the font height.
118 | line_height = 0
119 |
120 | # Possible values are:
121 | # full: Allow a small subset of html markup in notifications:
122 | # bold
123 | # italic
124 | # strikethrough
125 | # underline
126 | #
127 | # For a complete reference see
128 | # .
129 | #
130 | # strip: This setting is provided for compatibility with some broken
131 | # clients that send markup even though it's not enabled on the
132 | # server. Dunst will try to strip the markup but the parsing is
133 | # simplistic so using this option outside of matching rules for
134 | # specific applications *IS GREATLY DISCOURAGED*.
135 | #
136 | # no: Disable markup parsing, incoming notifications will be treated as
137 | # plain text. Dunst will not advertise that it has the body-markup
138 | # capability if this is set as a global setting.
139 | #
140 | # It's important to note that markup inside the format option will be parsed
141 | # regardless of what this is set to.
142 | markup = full
143 |
144 | # The format of the message. Possible variables are:
145 | # %a appname
146 | # %s summary
147 | # %b body
148 | # %i iconname (including its path)
149 | # %I iconname (without its path)
150 | # %p progress value if set ([ 0%] to [100%]) or nothing
151 | # %n progress value if set without any extra characters
152 | # %% Literal %
153 | # Markup is allowed
154 | # %a \n
155 | format = "%s\n%n%b"
156 |
157 | # Alignment of message text.
158 | # Possible values are "left", "center" and "right".
159 | alignment = left
160 |
161 | # Vertical alignment of message text and icon.
162 | # Possible values are "top", "center" and "bottom".
163 | vertical_alignment = center
164 |
165 | # Show age of message if message is older than show_age_threshold
166 | # seconds.
167 | # Set to -1 to disable.
168 | show_age_threshold = 60
169 |
170 | # Specify where to make an ellipsis in long lines.
171 | # Possible values are "start", "middle" and "end".
172 | ellipsize = middle
173 |
174 | # Ignore newlines '\n' in notifications.
175 | ignore_newline = no
176 |
177 | # Stack together notifications with the same content
178 | stack_duplicates = true
179 |
180 | # Hide the count of stacked notifications with the same content
181 | hide_duplicate_count = false
182 |
183 | # Display indicators for URLs (U) and actions (A).
184 | show_indicators = no
185 |
186 | ### Icons ###
187 |
188 | # Align icons left/right/off
189 | icon_position = left
190 |
191 | # Scale small icons up to this size, set to 0 to disable. Helpful
192 | # for e.g. small files or high-dpi screens. In case of conflict,
193 | # max_icon_size takes precedence over this.
194 | min_icon_size = 0
195 |
196 | # Scale larger icons down to this size, set to 0 to disable
197 | max_icon_size = 64
198 |
199 | # Paths to default icons.
200 | icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
201 |
202 | ### History ###
203 |
204 | # Should a notification popped up from history be sticky or timeout
205 | # as if it would normally do.
206 | sticky_history = yes
207 |
208 | # Maximum amount of notifications kept in history
209 | history_length = 20
210 |
211 | ### Misc/Advanced ###
212 |
213 | # dmenu path.
214 | dmenu = /usr/bin/dmenu -p dunst:
215 |
216 | # Browser for opening urls in context menu.
217 | browser = /usr/bin/firefox -new-tab
218 |
219 | # Always run rule-defined scripts, even if the notification is suppressed
220 | always_run_script = true
221 |
222 | # Define the title of the windows spawned by dunst
223 | title = Dunst
224 |
225 | # Define the class of the windows spawned by dunst
226 | class = Dunst
227 |
228 | # Define the corner radius of the notification window
229 | # in pixel size. If the radius is 0, you have no rounded
230 | # corners.
231 | # The radius will be automatically lowered if it exceeds half of the
232 | # notification height to avoid clipping text and/or icons.
233 | corner_radius = 8
234 |
235 | # Ignore the dbus closeNotification message.
236 | # Useful to enforce the timeout set by dunst configuration. Without this
237 | # parameter, an application may close the notification sent before the
238 | # user defined timeout.
239 | ignore_dbusclose = false
240 |
241 | ### Wayland ###
242 | # These settings are Wayland-specific. They have no effect when using X11
243 |
244 | # Uncomment this if you want to let notications appear under fullscreen
245 | # applications (default: overlay)
246 | # layer = top
247 |
248 | # Set this to true to use X11 output on Wayland.
249 | force_xwayland = false
250 |
251 | ### Legacy
252 |
253 | # Use the Xinerama extension instead of RandR for multi-monitor support.
254 | # This setting is provided for compatibility with older nVidia drivers that
255 | # do not support RandR and using it on systems that support RandR is highly
256 | # discouraged.
257 | #
258 | # By enabling this setting dunst will not be able to detect when a monitor
259 | # is connected or disconnected which might break follow mode if the screen
260 | # layout changes.
261 | force_xinerama = false
262 |
263 | mouse_right_click = close_current
264 | mouse_left_click = do_action, close_current
265 | mouse_middle_click = close_all
266 |
267 | frame_color = "#89B4FA"
268 |
269 | [urgency_low]
270 | background = "#1E1E2E"
271 | foreground = "#CDD6F4"
272 |
273 | [urgency_normal]
274 | background = "#1E1E2E"
275 | foreground = "#CDD6F4"
276 |
277 | [urgency_critical]
278 | background = "#1E1E2E"
279 | foreground = "#CDD6F4"
280 | frame_color = "#FAB387"
281 |
282 |
283 | [volume]
284 | appname = Volume
285 | format="%a\n[%n%%]"
286 | history_ignore=yes
287 | alignment = right
288 | highlight = "#b4befe"
289 |
290 | [muted]
291 | appname = Muted
292 | format="%a\n[%n%%]"
293 | history_ignore=yes
294 | alignment = right
295 | frame_color = "#f38ba8"
296 |
297 | [restart]
298 | appname = Bspwm
299 | format="%a\n%s"
300 | alignment = left
--------------------------------------------------------------------------------
/polybar/bar/.config.bak.ini:
--------------------------------------------------------------------------------
1 | ;; ┌────────────────────────────────────────────────────────────┐
2 | ;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│
3 | ;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│
4 | ;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│
5 | ;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│
6 | ;; └────────────────────────────────────────────────────────────┘
7 |
8 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
9 |
10 | ;; Global WM Settings
11 |
12 |
13 | [global/wm]
14 | ; Adjust the _NET_WM_STRUT_PARTIAL top value
15 | ; Used for top aligned bars
16 | margin-bottom = 0
17 |
18 | ; Adjust the _NET_WM_STRUT_PARTIAL bottom value
19 | ; Used for bottom aligned bars
20 | margin-top = 0
21 |
22 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
23 |
24 | ;; File Inclusion
25 | ; include an external file, like module file, etc.
26 |
27 | include-file = ~/.config/polybar/bar/colors.ini
28 | include-file = ~/.config/polybar/bar/modules.ini
29 |
30 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
31 |
32 | ;; Bar Settings
33 |
34 | [bar/main]
35 | ; Use either of the following command to list available outputs:
36 | ; If unspecified, the application will pick the first one it finds.
37 | ; $ polybar -m | cut -d ':' -f 1
38 | ; $ xrandr -q | grep " connected" | cut -d ' ' -f1
39 | monitor = ${env:MONITOR}
40 |
41 | ; Use the specified monitor as a fallback if the main one is not found.
42 | monitor-fallback =
43 |
44 | ; Require the monitor to be in connected state
45 | ; XRandR sometimes reports my monitor as being disconnected (when in use)
46 | monitor-strict = false
47 |
48 | ; Tell the Window Manager not to configure the window.
49 | ; Use this to detach the bar if your WM is locking its size/position.
50 | override-redirect = false
51 | wm-restack = bspwm
52 |
53 | ; Put the bar at the bottom of the screen
54 | bottom = false
55 |
56 | ; Prefer fixed center position for the `modules-center` block
57 | ; When false, the center position will be based on the size of the other blocks.
58 | fixed-center = true
59 |
60 | ; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%),
61 | ; the percentage can optionally be extended with a pixel offset like so:
62 | ; 50%:-10, this will result in a width or height of 50% minus 10 pixels
63 | width = 100%:-11
64 | height = 34
65 |
66 | ; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
67 | ; the percentage can optionally be extended with a pixel offset like so:
68 | ; 50%:-10, this will result in an offset in the x or y direction
69 | ; of 50% minus 10 pixels
70 | offset-x = 4
71 | offset-y = 4
72 |
73 | ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
74 | background = ${color.background}
75 |
76 | ; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023)
77 | foreground = ${color.foreground}
78 |
79 | ; Background gradient (vertical steps)
80 | ; background-[0-9]+ = #aarrggbb
81 | ;;background-0 =
82 |
83 | ; Value used for drawing rounded corners
84 | ; Note: This shouldn't be used together with border-size because the border
85 | ; doesn't get rounded
86 | ; Individual top/bottom values can be defined using:
87 | ; radius-{top,bottom}
88 | radius-top = 5.0
89 | radius-bottom = 5.0
90 | border-size = 2
91 | #border-{left,top,right,bottom}-size = 1
92 | #border-bottom-size = 1
93 | border-color = #bd93f9
94 | ; Under-/overline pixel size and argb color
95 | ; Individual values can be defined using:
96 | ; {overline,underline}-size
97 | ; {overline,underline}-color
98 | line-size = 3
99 | line-color = ${color.background}
100 |
101 | ; Values applied to all borders
102 | ; Individual side values can be defined using:
103 | ; border-{left,top,right,bottom}-size
104 | ; border-{left,top,right,bottom}-color
105 | ; The top and bottom borders are added to the bar height, so the effective
106 | ; window height is:
107 | ; height + border-top-size + border-bottom-size
108 | ; Meanwhile the effective window width is defined entirely by the width key and
109 | ; the border is placed withing this area. So you effectively only have the
110 | ; following horizontal space on the bar:
111 | ; width - border-right-size - border-left-size
112 | #border-bottom-size = 0
113 | #border-bottom-color = ${color.primary}
114 |
115 | ; Number of spaces to add at the beginning/end of the bar
116 | ; Individual side values can be defined using:
117 | ; padding-{left,right}
118 | padding = 0
119 |
120 | ; Number of spaces to add before/after each module
121 | ; Individual side values can be defined using:
122 | ; module-margin-{left,right}
123 | module-margin-left = 0
124 | module-margin-right = 0
125 |
126 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
127 |
128 | ; Fonts are defined using ;
129 | ; Font names are specified using a fontconfig pattern.
130 | ; font-0 = NotoSans-Regular:size=8;2
131 | ; font-1 = MaterialIcons:size=10
132 | ; font-2 = Termsynu:size=8;-1
133 | ; font-3 = FontAwesome:size=10
134 | ; See the Fonts wiki page for more details
135 |
136 | font-0 = "Iosevka Nerd Font:size=10;4"
137 | font-1 = "feather:size=10;3"
138 | font-2 = "Font Awesome 6 Free Solid:size=10;4"
139 | font-3 = "Font Awesome 6 Brands Regular:size=9;3"
140 | font-4 = "Font Awesome v4 Compatibility Regular:size=9;3"
141 | font-5 = "Font Awesome 6 Free Regular:size=9;3"
142 |
143 | ; Modules are added to one of the available blocks
144 | ; modules-left = cpu ram
145 | ; modules-center = xwindow xbacklight
146 | ; modules-right = ipc clock
147 |
148 | modules-left = sep workspaces sep playerctl-spotify playerctl-youtube
149 | modules-center = title
150 | modules-right = network sep xkeyboard sep style-switch sep date sep pulseaudio sep tray-icon sep
151 |
152 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
153 |
154 | ; The separator will be inserted between the output of each module
155 | separator =
156 |
157 | ; Opacity value between 0.0 and 1.0 used on fade in/out
158 | dim-value = 1.0
159 |
160 | ; Value to be used to set the WM_NAME atom
161 | ; If the value is empty or undefined, the atom value
162 | ; will be created from the following template: polybar-[BAR]_[MONITOR]
163 | ; NOTE: The placeholders are not available for custom values
164 | wm-name =
165 |
166 | ; Locale used to localize various module data (e.g. date)
167 | ; Expects a valid libc locale, for example: sv_SE.UTF-8
168 | locale =
169 |
170 | ; Position of the system tray window
171 | ; If empty or undefined, tray support will be disabled
172 | ; NOTE: A center aligned tray will cover center aligned modules
173 | ;
174 | ; Available positions:
175 | ; left
176 | ; center
177 | ; right
178 | ; none
179 | tray-position = none
180 |
181 | ; If true, the bar will not shift its
182 | ; contents when the tray changes
183 | tray-detached = true
184 |
185 | ; Tray icon max size
186 | tray-maxsize = 16
187 |
188 | ; Background color for the tray container
189 | ; ARGB color (e.g. #f00, #ff992a, #ddff1023)
190 | ; By default the tray container will use the bar
191 | ; background color.
192 | tray-background = #90282a36
193 |
194 | ; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
195 | tray-offset-x = 0
196 | tray-offset-y = 0
197 |
198 | ; Pad the sides of each tray icon
199 | tray-padding = 0
200 |
201 | ; Scale factor for tray clients
202 | tray-scale = 1.0
203 |
204 | ; Restack the bar window and put it above the
205 | ; selected window manager's root
206 | ;
207 | ; Fixes the issue where the bar is being drawn
208 | ; on top of fullscreen window's
209 | ;
210 | ; Currently supported WM's:
211 | ; bspwm
212 | ; i3 (requires: `override-redirect = true`)
213 | ;;wm-restack =
214 |
215 | ; Set a DPI values used when rendering text
216 | ; This only affects scalable fonts
217 | ; dpi =
218 |
219 | ; Enable support for inter-process messaging
220 | ; See the Messaging wiki page for more details.
221 | enable-ipc = true
222 |
223 | ; Fallback click handlers that will be called if
224 | ; there's no matching module handler found.
225 | click-left =
226 | click-middle =
227 | click-right =
228 | scroll-up =
229 | scroll-down =
230 | double-click-left =
231 | double-click-middle =
232 | double-click-right =
233 |
234 | ; Requires polybar to be built with xcursor support (xcb-util-cursor)
235 | ; Possible values are:
236 | ; - default : The default pointer as before, can also be an empty string (default)
237 | ; - pointer : Typically in the form of a hand
238 | ; - ns-resize : Up and down arrows, can be used to indicate scrolling
239 | cursor-click =
240 | cursor-scroll =
241 |
242 | ;; WM Workspace Specific
243 |
244 | ; bspwm
245 | ;;scroll-up = bspwm-desknext
246 | ;;scroll-down = bspwm-deskprev
247 | ;;scroll-up = bspc desktop -f prev.local
248 | ;;scroll-down = bspc desktop -f next.local
249 |
250 | ;i3
251 | ;;scroll-up = i3wm-wsnext
252 | ;;scroll-down = i3wm-wsprev
253 | ;;scroll-up = i3-msg workspace next_on_output
254 | ;;scroll-down = i3-msg workspace prev_on_output
255 |
256 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
257 |
258 |
259 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
260 |
261 | ;; Application Settings
262 |
263 | [settings]
264 | ; The throttle settings lets the eventloop swallow up til X events
265 | ; if they happen within Y millisecond after first event was received.
266 | ; This is done to prevent flood of update event.
267 | ;
268 | ; For example if 5 modules emit an update event at the same time, we really
269 | ; just care about the last one. But if we wait too long for events to swallow
270 | ; the bar would appear sluggish so we continue if timeout
271 | ; expires or limit is reached.
272 | throttle-output = 5
273 | throttle-output-for = 10
274 |
275 | ; Time in milliseconds that the input handler will wait between processing events
276 | ;throttle-input-for = 30
277 |
278 | ; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events
279 | screenchange-reload = false
280 |
281 | ; Compositing operators
282 | ; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t
283 | compositing-background = source
284 | compositing-foreground = over
285 | compositing-overline = over
286 | compositing-underline = over
287 | compositing-border = over
288 |
289 | ; Define fallback values used by all module formats
290 | ;format-foreground =
291 | ;format-background =
292 | ;format-underline =
293 | ;format-overline =
294 | ;format-spacing =
295 | ;format-padding =
296 | ;format-margin =
297 | ;format-offset =
298 |
299 | ; Enables pseudo-transparency for the bar
300 | ; If set to true the bar can be transparent without a compositor.
301 | pseudo-transparency = false
302 |
303 | ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
304 |
--------------------------------------------------------------------------------
/polybar/bar/modules.ini:
--------------------------------------------------------------------------------
1 | #https://www.nerdfonts.com/cheat-sheet
2 | #https://fontawesome.com/v5/cheatsheet/free/solid
3 | #https://dropways.github.io/feathericons/
4 |
5 | [module/playerctl-resonance]
6 | type = custom/script
7 | interval = -1
8 | format-prefix = "%{A1:playerctl --player=io previous:} %{A}%{A1:playerctl --player=io play-pause:}%{A}%{A1:playerctl --player=io next:} %{A}| "
9 | #format-prefix = " "
10 | exec = playerctl metadata -f '{{artist}} - {{title}}'
11 | exec-if = pgrep resonance
12 | click-left = $HOME/.config/polybar/scripts/music-player-switch.sh spotify
13 | format-underline = ${color.cyan}
14 | underline-size = 1
15 | label-maxlen = 40
16 | format-foreground = ${color.fg}
17 |
18 |
19 | [module/menu-misc]
20 | type = custom/menu
21 | expand-right = true
22 |
23 | menu-0-1 = ""
24 | menu-0-1-exec = #menu-misc.open.1
25 | menu-0-1-foreground = ${color.fg}
26 | menu-0-1-underline = ${color.blue}
27 | menu-0-2 = %{A3:CM_LAUNCHER=rofi clipmenu -theme $HOME/.config/rofi-own/clipmenu-2.rasi:}%{A}
28 | menu-0-2-exec = rofi -modi "clipboard:greenclip print" -show clipboard -run-command '{cmd}' -theme ~/.config/rofi-own/clipmenu-2.rasi
29 | menu-0-2-foreground = ${color.fg}
30 | menu-0-2-underline = ${color.cyan}
31 | menu-0-3 = ""
32 | menu-0-3-exec = screenshot --area
33 | menu-0-3-foreground = ${color.fg}
34 | menu-0-3-underline = ${color.green}
35 | menu-0-4 = ""
36 | menu-0-4-exec = reload-pb
37 | menu-0-4-foreground = ${color.fg}
38 | menu-0-4-underline = ${color.purple}
39 | menu-0-5 = ""
40 | menu-0-5-exec = ~/.config/polybar/scripts/youtube-lock.sh toggle
41 | menu-0-5-foreground = ${color.fg}
42 | menu-0-5-underline = ${color.red}
43 | menu-0-0 = ""
44 | menu-0-0-exec = ~/.config/polybar/scripts/jgmenu.sh
45 | menu-0-0-foreground = ${color.fg}
46 | menu-0-0-underline = ${color.cyan}
47 |
48 | menu-1-0 = Borders
49 | menu-1-0-exec = bash ~/.config/bspwm/scripts/borders.sh
50 | menu-1-0-foreground = ${color.fg}
51 | menu-1-0-underline = ${color.blue}
52 | menu-1-1 = Picom
53 | menu-1-1-exec = pgrep picom >/dev/null && pkill picom || $(cat ~/.picomlockfile) --config ~/.config/picom/config.conf --experimental-backends &
54 | menu-1-1-foreground = ${color.fg}
55 | menu-1-1-underline = ${color.blue}
56 |
57 | label-open = ""
58 | label-open-foreground = ${color.fg}
59 | label-open-underline = ${color.cyan}
60 | label-separator = " | "
61 | label-separator-foreground = ${color.fg}
62 | label-close = ""
63 | label-close-foreground = ${color.red}
64 |
65 | [module/weather]
66 | #### https://github.com/kamek-pf/ntfd is needed for this ####
67 | type = custom/script
68 | exec = busctl --user -j get-property io.ntfd /weather openweathermap.strings RenderedTemplate | jq -r .data
69 | interval = 60
70 | format-underline = ${color.orange}
71 | format-foreground = ${color.fg}
72 | click-left = firefox https://openweathermap.org/city/264371
73 |
74 | [module/layout]
75 | type = custom/script
76 | format-underline = ${color.yellow}
77 | exec = echo ""
78 | click-left = bspc desktop -l next
79 | format-foreground = ${color.fg}
80 |
81 | [module/yt-lock]
82 | type = custom/script
83 | format-underline = ${color.red}
84 | exec = ~/.config/polybar/scripts/yt-lock.sh echosym
85 | click-left = ~/.config/polybar/scripts/yt-lock.sh
86 | format-foreground = ${color.fg}
87 |
88 | [module/keyboard]
89 | type = custom/ipc
90 | hook-0 = cat ~/.kblayout
91 | initial = 1
92 | click-left = sh /home/george/scripts/bspwm/layoutswitch.sh
93 | format-underline = ${color.red}
94 | format-foreground = ${color.fg}
95 | format-prefix = " "
96 |
97 | [module/xkeyboard]
98 | type = internal/xkeyboard
99 | format-underline = ${color.red}
100 | format-foreground = ${color.fg}
101 | #format-prefix = "language: "
102 | format-prefix = " "
103 | click-left = sh /home/george/scripts/bspwm/layoutswitch.sh
104 | #format-prefix-foreground = ${color.red}
105 | blacklist-0 = num lock
106 | #blacklist-1 = scroll lock
107 |
108 | [module/clipboard]
109 | type = custom/script
110 | format-underline = ${color.green}
111 | exec = echo ""
112 | click-left = CM_LAUNCHER=rofi clipmenu -theme $HOME/.config/rofi-own/clipmenu-2.rasi
113 | click-right = rofi -modi "clipboard:greenclip print" -show clipboard -run-command '{cmd}' -theme ~/.config/rofi-own/clipmenu-2.rasi
114 | format-foreground = ${color.fg}
115 |
116 | [module/maim]
117 | type = custom/script
118 | format-underline = ${color.cyan}
119 | exec = echo ""
120 | click-left = screenshot --area
121 | format-foreground = ${color.fg}
122 |
123 | [module/reload]
124 | type = custom/script
125 | format-underline = ${color.purple}
126 | exec = echo ""
127 | click-left = reload-pb
128 | format-foreground = ${color.fg}
129 |
130 | [module/playerctl-youtube]
131 | type = custom/script
132 | interval = 1
133 | format-prefix = "%{A1:playerctl --player=firefox previous:} %{A}%{A1:playerctl --player=firefox play-pause:}%{A}%{A1:playerctl --player=firefox next:} %{A}| "
134 | #format-prefix = " "
135 | exec = sh ~/.config/polybar/scripts/youtube.sh
136 | exec-if = cat /tmp/yt-lock
137 | click-left = $HOME/.config/polybar/scripts/music-player-switch.sh yt
138 | format-underline = ${color.red}
139 | underline-size = 1
140 | label-maxlen = 40
141 | format-foreground = ${color.fg}
142 |
143 |
144 | [module/playerctl-spotify-old]
145 | type = custom/script
146 | #%{A2:pkill spotify && sleep 1 && reload-pb:}%{A}
147 | format-prefix = "%{A1:playerctl --player=spotify previous:} %{A}%{A1:playerctl --player=spotify play-pause:}%{A}%{A1:playerctl --player=spotify next:} %{A}| "
148 | interval = 1
149 | exec = sh ~/.config/polybar/scripts/spotify.sh
150 | exec-if = playerctl metadata -f {{playerName}} 2>/dev/null | grep -Ev 'mopidy' >/dev/null
151 | click-left = $HOME/.config/polybar/scripts/music-player-switch.sh spotify
152 | format-underline = ${color.green}
153 | line-size = 5
154 | label-maxlen = 40
155 | format-foreground = ${color.fg}
156 | #
157 |
158 |
159 |
160 | [module/playerctl-display]
161 | type = custom/ipc
162 | initial = 1
163 | hook-0 = ~/.config/polybar/scripts/module-playerctl.sh display
164 | click-left = ~/.config/polybar/scripts/module-playerctl.sh switch
165 | click-right = ~/.config/polybar/scripts/youtube-lock.sh toggle
166 | format-foreground = ${color.fg}
167 | format-underline = ${color.white}
168 | format-len = 10
169 | format-maxlen = 10
170 |
171 |
172 | [module/playerctl-spotify]
173 | type = custom/ipc
174 | hook-0 = ~/scripts/polybar/spotify-playerctl.sh display
175 | initial = 1
176 | click-left = $HOME/.config/polybar/scripts/music-player-switch.sh spotify
177 | format-underline = ${color.green}
178 | format-foreground = ${color.fg}
179 | #
180 |
181 | [module/cpu]
182 | type = internal/cpu
183 | interval = 1
184 | format =