Compare commits
28 Commits
00ba9863bc
...
waybar
| Author | SHA1 | Date | |
|---|---|---|---|
|
5ed69da6fc
|
|||
|
bcb7a93b90
|
|||
|
2f672733c2
|
|||
|
de535944f3
|
|||
|
6e56e1d203
|
|||
|
5721cebb57
|
|||
|
15e72a654d
|
|||
|
8864557b02
|
|||
|
f9da29cc0d
|
|||
|
0cbd1bf856
|
|||
|
c905c4cdb6
|
|||
|
6f11a13f1f
|
|||
|
cc7511a954
|
|||
|
0c2dc97daf
|
|||
|
79c6004043
|
|||
|
3753805996
|
|||
|
02be4c6a24
|
|||
|
91275b9688
|
|||
|
29bda01e31
|
|||
|
a41d24ab47
|
|||
|
5c8f94abd6
|
|||
|
58e9f2cc91
|
|||
|
654916042a
|
|||
|
bd1c560b03
|
|||
|
5091854f84
|
|||
|
63358a8f89
|
|||
|
54deab7cab
|
|||
|
af1fe008a1
|
30
.gitignore
vendored
30
.gitignore
vendored
@@ -16,7 +16,7 @@ zsh/*
|
||||
!zsh/.zshrc
|
||||
!zsh/.zshenv
|
||||
!zsh/.zprofile
|
||||
!zsh/.zsh_plugins.txt
|
||||
!zsh/.zsh_plugins*.txt
|
||||
!zsh/scripts.zsh
|
||||
!zsh/aliases.zsh
|
||||
!zsh/completions/.keep
|
||||
@@ -42,10 +42,36 @@ tmux/*
|
||||
git/*
|
||||
!git/config
|
||||
!git/ignore
|
||||
!git/aflabs
|
||||
!git/config.d
|
||||
git/config.d/*
|
||||
!git/config.d/aflabs.conf
|
||||
!git/config.d/flare.conf
|
||||
|
||||
# ghostty
|
||||
!ghostty
|
||||
ghostty/*
|
||||
!ghostty/config
|
||||
!ghostty/themes
|
||||
|
||||
# sway
|
||||
!sway
|
||||
sway/*
|
||||
!sway/config
|
||||
!sway/config.d
|
||||
!sway/host.d
|
||||
|
||||
!swaylock
|
||||
swaylock/*
|
||||
!swaylock/config
|
||||
|
||||
!swayidle
|
||||
swayidle/*
|
||||
!swayidle/config
|
||||
|
||||
!waybar
|
||||
!bin
|
||||
|
||||
# flameshot
|
||||
!flameshot
|
||||
flameshot/*
|
||||
!flameshot/flameshot.ini
|
||||
|
||||
34
bin/waybar-custom-cider.sh
Executable file
34
bin/waybar-custom-cider.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
url="http://localhost:10767/api/v1/playback"
|
||||
|
||||
status_raw=$(curl -s --max-time 2 "$url/is-playing")
|
||||
|
||||
# CASE 1: API is totally unreachable (App closed)
|
||||
if [[ -z "$status_raw" ]]; then
|
||||
echo '{"text": "offline", "class": "offline", "alt": "offline"}'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Extract playing status, defaulting to false if null
|
||||
is_playing=$(echo "$status_raw" | jq -r '.is_playing // false')
|
||||
|
||||
# 2. Get song info
|
||||
info_raw=$(curl -s --max-time 2 "$url/now-playing")
|
||||
|
||||
# CASE 2 & 3: Handle empty metadata vs. active metadata
|
||||
echo "$info_raw" | jq -c \
|
||||
--argjson is_playing "$is_playing" \
|
||||
'
|
||||
# Helper function to escape & for Pango
|
||||
def pango_escape: sub("&"; "&"; "g");
|
||||
|
||||
if (.info.name == null or .info.name == "") then
|
||||
{text: "idle", class: "paused"}
|
||||
else
|
||||
{
|
||||
text: "\(.info.name | pango_escape) - \(.info.artistName | pango_escape)",
|
||||
tooltip: "\(.info.albumName | pango_escape // "Unknown")",
|
||||
class: (if $is_playing then "playing" else "paused" end)
|
||||
}
|
||||
end'
|
||||
16
flameshot/flameshot.ini
Normal file
16
flameshot/flameshot.ini
Normal file
@@ -0,0 +1,16 @@
|
||||
[General]
|
||||
contrastOpacity=188
|
||||
contrastUiColor=#000000
|
||||
disabledGrimWarning=true
|
||||
drawColor=#00ffff
|
||||
saveAfterCopy=true
|
||||
savePath=/home/matej/screens
|
||||
showHelp=false
|
||||
showMagnifier=true
|
||||
showSelectionGeometryHideTime=3000
|
||||
uiColor=#ffffff
|
||||
useGrimAdapter=true
|
||||
|
||||
[Shortcuts]
|
||||
TYPE_ACCEPT=
|
||||
TYPE_COPY=Space
|
||||
@@ -2,6 +2,8 @@
|
||||
# theme = light:gruvbox-material-soft-light,dark:gruvbox-material-soft-dark
|
||||
theme = gruvbox-material-soft-dark
|
||||
|
||||
minimum-contrast = 1.1
|
||||
|
||||
# cursor
|
||||
cursor-style = block
|
||||
cursor-style-blink = true
|
||||
@@ -12,8 +14,6 @@ mouse-hide-while-typing = true
|
||||
# font stuff
|
||||
font-family = JetBrainsMono Nerd Font
|
||||
font-size = 15
|
||||
font-thicken = true
|
||||
bold-is-bright = true
|
||||
|
||||
# disable ligatures
|
||||
font-feature=-calt
|
||||
|
||||
18
git/config
18
git/config
@@ -1,12 +1,3 @@
|
||||
[includeIf "gitdir:~/Desktop/git/git.aflabs.org/"]
|
||||
path = ~/.config/git/config.d/aflabs.conf
|
||||
|
||||
[includeIf "gitdir:~/Desktop/git/gitlab.com/flarenetwork"]
|
||||
path = ~/.config/git/config.d/aflabs.conf
|
||||
|
||||
[includeIf "gitdir:~/Desktop/git/gitlab.com/flare-foundation"]
|
||||
path = ~/.config/git/flare
|
||||
|
||||
[user]
|
||||
name = Matej Janežič
|
||||
email = janezic.mj@gmail.com
|
||||
@@ -54,3 +45,12 @@
|
||||
|
||||
[mergetool "nvimdiff"]
|
||||
layout = "LOCAL,BASE,REMOTE / MERGED"
|
||||
|
||||
[includeIf "gitdir:~/git/git.aflabs.org/**"]
|
||||
path = ~/.config/git/config.d/aflabs.conf
|
||||
|
||||
[includeIf "gitdir:~/git/gitlab.com/flarenetwork/**"]
|
||||
path = ~/.config/git/config.d/flare.conf
|
||||
|
||||
[includeIf "gitdir:~/git/gitlab.com/flare-foundation/**"]
|
||||
path = ~/.config/git/config.d/flare.conf
|
||||
|
||||
2
git/config.d/aflabs.conf
Normal file
2
git/config.d/aflabs.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
[user]
|
||||
email = matej.janezic@aflabs.com
|
||||
2
git/config.d/flare.conf
Normal file
2
git/config.d/flare.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
[user]
|
||||
email = matej@flare.network
|
||||
@@ -18,3 +18,5 @@
|
||||
# todo files
|
||||
TODO.md
|
||||
|
||||
# db dumps files
|
||||
dumps
|
||||
|
||||
@@ -11,6 +11,7 @@ $character\
|
||||
"""
|
||||
|
||||
right_format = """\
|
||||
$nix_shell\
|
||||
$golang\
|
||||
$lua\
|
||||
$nodejs\
|
||||
@@ -19,6 +20,10 @@ $rust\
|
||||
$cmd_duration\
|
||||
"""
|
||||
|
||||
[nix_shell]
|
||||
disabled = false
|
||||
format = '[n(\($name\))](bold blue) '
|
||||
|
||||
[character]
|
||||
success_symbol = '[>](bold green)'
|
||||
error_symbol = '[>](bold red)'
|
||||
|
||||
3
sway/config
Normal file
3
sway/config
Normal file
@@ -0,0 +1,3 @@
|
||||
include host.d/"$(hostname)".conf
|
||||
include config.d/*
|
||||
include /etc/sway/config.d/*
|
||||
27
sway/config.d/10-variables.conf
Normal file
27
sway/config.d/10-variables.conf
Normal file
@@ -0,0 +1,27 @@
|
||||
set $mod Mod4
|
||||
|
||||
# vim style
|
||||
set $left h
|
||||
set $down j
|
||||
set $up k
|
||||
set $right l
|
||||
|
||||
# programs
|
||||
set $term ghostty
|
||||
set $menu wofi --show drun -iIG -w 2
|
||||
set $browser google-chrome-stable
|
||||
set $lockscreen swaylock
|
||||
|
||||
# other
|
||||
set $wobs /tmp/wob.sock
|
||||
|
||||
# style
|
||||
set $border 3
|
||||
|
||||
# colors
|
||||
set $bg0 #32302f
|
||||
set $bg1 #252423
|
||||
set $bg_overlay #45403d
|
||||
set $fg #d4be98
|
||||
set $red #ea6962
|
||||
set $gray #928374
|
||||
1
sway/config.d/20-output.conf
Normal file
1
sway/config.d/20-output.conf
Normal file
@@ -0,0 +1 @@
|
||||
output * bg ~/.assets/wallpaper.png fill
|
||||
5
sway/config.d/30-input.conf
Normal file
5
sway/config.d/30-input.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
input "type:keyboard" {
|
||||
xkb_options "fkeys:basic_13-24"
|
||||
repeat_delay 150
|
||||
repeat_rate 35
|
||||
}
|
||||
12
sway/config.d/40-theme.conf
Normal file
12
sway/config.d/40-theme.conf
Normal file
@@ -0,0 +1,12 @@
|
||||
font pango:JetBrainsMono Nerd Font Bold 10
|
||||
|
||||
default_floating_border normal $border
|
||||
default_border normal $border
|
||||
titlebar_border_thickness $border
|
||||
|
||||
# class border bground text indicator child_border
|
||||
client.focused $fg $bg0 $fg $fg $fg
|
||||
client.focused_inactive $bg1 $bg1 $gray $bg1 $bg1
|
||||
client.unfocused $bg1 $bg1 $gray $bg1 $bg1
|
||||
client.urgent $red $red $bg0 $red $red
|
||||
client.placeholder $bg1 $bg1 $fg $bg1 $bg1
|
||||
8
sway/config.d/41-theme-swayfx.conf
Normal file
8
sway/config.d/41-theme-swayfx.conf
Normal file
@@ -0,0 +1,8 @@
|
||||
titlebar_separator disable
|
||||
|
||||
shadows enable
|
||||
shadow_blur_radius 25
|
||||
shadow_color #0000007F
|
||||
shadow_offset 0 5
|
||||
|
||||
blur enable
|
||||
118
sway/config.d/50-keybind.conf
Normal file
118
sway/config.d/50-keybind.conf
Normal file
@@ -0,0 +1,118 @@
|
||||
# sway
|
||||
bindsym $mod+Shift+c reload
|
||||
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
|
||||
floating_modifier $mod normal
|
||||
|
||||
# programs
|
||||
bindsym $mod+Return exec $term
|
||||
bindsym $mod+d exec $menu
|
||||
bindsym $mod+u exec $lockscreen
|
||||
bindsym $mod+Shift+Ctrl+Alt+space exec 1password --quick-access
|
||||
bindsym Print exec flameshot gui
|
||||
|
||||
# programs'
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# move focus
|
||||
bindsym $mod+$left focus left
|
||||
bindsym $mod+$down focus down
|
||||
bindsym $mod+$up focus up
|
||||
bindsym $mod+$right focus right
|
||||
|
||||
# move focused window
|
||||
bindsym $mod+Shift+$left move left
|
||||
bindsym $mod+Shift+$down move down
|
||||
bindsym $mod+Shift+$up move up
|
||||
bindsym $mod+Shift+$right move right
|
||||
|
||||
# switch to workspace
|
||||
bindsym $mod+1 workspace number 1
|
||||
bindsym $mod+2 workspace number 2
|
||||
bindsym $mod+3 workspace number 3
|
||||
bindsym $mod+4 workspace number 4
|
||||
bindsym $mod+5 workspace number 5
|
||||
bindsym $mod+6 workspace number 6
|
||||
bindsym $mod+7 workspace number 7
|
||||
bindsym $mod+8 workspace number 8
|
||||
bindsym $mod+9 workspace number 9
|
||||
bindsym $mod+0 workspace number 10
|
||||
|
||||
# move to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace number 1
|
||||
bindsym $mod+Shift+2 move container to workspace number 2
|
||||
bindsym $mod+Shift+3 move container to workspace number 3
|
||||
bindsym $mod+Shift+4 move container to workspace number 4
|
||||
bindsym $mod+Shift+5 move container to workspace number 5
|
||||
bindsym $mod+Shift+6 move container to workspace number 6
|
||||
bindsym $mod+Shift+7 move container to workspace number 7
|
||||
bindsym $mod+Shift+8 move container to workspace number 8
|
||||
bindsym $mod+Shift+9 move container to workspace number 9
|
||||
bindsym $mod+Shift+0 move container to workspace number 10
|
||||
|
||||
bindsym $mod+Ctrl+1 workspace number 1 output current
|
||||
bindsym $mod+Ctrl+2 workspace number 2 output current
|
||||
bindsym $mod+Ctrl+3 workspace number 3 output current
|
||||
bindsym $mod+Ctrl+4 workspace number 4 output current
|
||||
bindsym $mod+Ctrl+5 workspace number 5 output current
|
||||
bindsym $mod+Ctrl+6 workspace number 6 output current
|
||||
bindsym $mod+Ctrl+7 workspace number 7 output current
|
||||
bindsym $mod+Ctrl+8 workspace number 8 output current
|
||||
bindsym $mod+Ctrl+9 workspace number 9 output current
|
||||
bindsym $mod+Ctrl+0 workspace number 10 output current
|
||||
|
||||
# layout
|
||||
bindsym $mod+b splith
|
||||
bindsym $mod+v splitv
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
bindsym $mod+e layout toggle split
|
||||
|
||||
# fullscreen
|
||||
bindsym $mod+f fullscreen
|
||||
|
||||
# focus
|
||||
bindsym $mod+Shift+space floating toggle; [floating] border pixel $border; [tiling] border normal $border
|
||||
bindsym $mod+space focus mode_toggle
|
||||
bindsym $mod+a focus parent
|
||||
|
||||
# scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
bindsym $mod+minus scratchpad show
|
||||
|
||||
# xf86-volume
|
||||
bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
|
||||
bindsym --locked XF86AudioLowerVolume exec pamixer -d 5 && pamixer --get-volume > $wobs
|
||||
bindsym --locked XF86AudioRaiseVolume exec pamixer -i 5 && pamixer --get-volume > $wobs
|
||||
bindsym --locked F16 exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
|
||||
|
||||
# xf86-brightnes
|
||||
bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
|
||||
bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
|
||||
# xf86-audio
|
||||
bindsym --locked XF86AudioNext exec playerctl next
|
||||
bindsym --locked XF86AudioPause exec playerctl play-pause
|
||||
bindsym --locked XF86AudioPlay exec playerctl play-pause
|
||||
bindsym --locked XF86AudioPrev exec playerctl previous
|
||||
|
||||
# resize
|
||||
mode "resize" {
|
||||
# left will shrink the containers width
|
||||
# right will grow the containers width
|
||||
# up will shrink the containers height
|
||||
# down will grow the containers height
|
||||
bindsym $left resize shrink width 10px
|
||||
bindsym $down resize grow height 10px
|
||||
bindsym $up resize shrink height 10px
|
||||
bindsym $right resize grow width 10px
|
||||
|
||||
# Ditto, with arrow keys
|
||||
bindsym Left resize shrink width 10px
|
||||
bindsym Down resize grow height 10px
|
||||
bindsym Up resize shrink height 10px
|
||||
bindsym Right resize grow width 10px
|
||||
|
||||
# Return to default mode
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
bindsym $mod+r mode "resize"
|
||||
18
sway/config.d/60-window-rule.conf
Normal file
18
sway/config.d/60-window-rule.conf
Normal file
@@ -0,0 +1,18 @@
|
||||
# additional theming
|
||||
for_window [floating] border pixel $border
|
||||
for_window [tiling] border normal $border
|
||||
|
||||
# workspace assignment
|
||||
assign [app_id="google-chrome"] workspace 2
|
||||
assign [app_id="thunderbird"] workspace 3
|
||||
assign [app_id="Cider"] workspace 4
|
||||
assign [app_id=".*BoltLauncher.*"] workspace 5
|
||||
assign [class="net-runelite.*"] workspace 5
|
||||
assign [app_id="vesktop"] workspace 8
|
||||
assign [app_id="Slack"] workspace 8
|
||||
assign [app_id="org.telegram.desktop"] workspace 8
|
||||
assign [class="Rocket.Chat"] workspace 8
|
||||
|
||||
# rules
|
||||
for_window [class="net-runelite.*"] floating enable
|
||||
no_focus [class="net-runelite.*"]
|
||||
3
sway/config.d/70-bar.conf
Normal file
3
sway/config.d/70-bar.conf
Normal file
@@ -0,0 +1,3 @@
|
||||
bar {
|
||||
swaybar_command waybar
|
||||
}
|
||||
20
sway/config.d/80-autostart.conf
Normal file
20
sway/config.d/80-autostart.conf
Normal file
@@ -0,0 +1,20 @@
|
||||
# deamon
|
||||
exec swayidle -w
|
||||
exec wlsunset -l 46.1 -L 14.5
|
||||
exec rm -f $wobs \
|
||||
&& mkfifo $wobs \
|
||||
&& tail -f $wobs \
|
||||
| wob
|
||||
exec protonmail-bridge -n
|
||||
|
||||
# traditional "start when os starts" programs
|
||||
exec $term
|
||||
exec $browser
|
||||
exec thunderbird
|
||||
exec cider-2
|
||||
exec bolt-launcher
|
||||
exec vesktop
|
||||
exec slack
|
||||
exec Telegram
|
||||
exec rocketchat-desktop
|
||||
exec 1password --silent
|
||||
2
sway/host.d/matej-tower.conf
Normal file
2
sway/host.d/matej-tower.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
output HDMI-A-1 resolution 2560x1440 position 0,0
|
||||
output DP-2 resolution 2560x1440 position 2560,0
|
||||
3
swayidle/config
Normal file
3
swayidle/config
Normal file
@@ -0,0 +1,3 @@
|
||||
timeout 300 'swaylock -f'
|
||||
timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"'
|
||||
before-sleep 'swaylock -f'
|
||||
31
swaylock/config
Normal file
31
swaylock/config
Normal file
@@ -0,0 +1,31 @@
|
||||
image=~/.assets/lockscreen.png
|
||||
|
||||
clock
|
||||
datestr=%A, %d/%m/%y
|
||||
|
||||
indicator-radius=150
|
||||
indicator-thickness=7
|
||||
indicator-idle-visible
|
||||
indicator-y-position=300
|
||||
indicator-x-position=1200
|
||||
|
||||
inside-color=000000
|
||||
text-color=ffffff
|
||||
ring-color=ffffff
|
||||
|
||||
inside-ver-color=000000
|
||||
text-ver-color=000000
|
||||
ring-ver-color=ffffff
|
||||
|
||||
inside-clear-color=000000
|
||||
text-clear-color=ffffff
|
||||
ring-clear-color=ffffff
|
||||
|
||||
inside-wrong-color=000000
|
||||
text-wrong-color=ffffff
|
||||
ring-wrong-color=ffffff
|
||||
|
||||
key-hl-color=000000
|
||||
bs-hl-color=000000
|
||||
caps-lock-key-hl-color=000000
|
||||
caps-lock-bs-hl-color=000000
|
||||
214
waybar/config.jsonc
Normal file
214
waybar/config.jsonc
Normal file
@@ -0,0 +1,214 @@
|
||||
[
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"height": 30,
|
||||
"spacing": 1,
|
||||
"margin": 0,
|
||||
"modules-left": [
|
||||
"sway/workspaces", "sway/mode"
|
||||
],
|
||||
"modules-center": [
|
||||
"privacy",
|
||||
"custom/ssh-login"
|
||||
],
|
||||
"modules-right": [
|
||||
"custom/cider",
|
||||
"pulseaudio",
|
||||
"power-profiles-daemon",
|
||||
"cpu",
|
||||
"memory",
|
||||
"temperature",
|
||||
"backlight",
|
||||
"battery",
|
||||
"tray",
|
||||
],
|
||||
//
|
||||
"sway/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"1": "I",
|
||||
"2": "II",
|
||||
"3": "III",
|
||||
"4": "IV",
|
||||
"5": "V",
|
||||
"6": "VI",
|
||||
"7": "VII",
|
||||
"8": "VIII",
|
||||
"9": "IX",
|
||||
"10": "X",
|
||||
},
|
||||
},
|
||||
"sway/mode": {
|
||||
"format": "{}",
|
||||
},
|
||||
"custom/cider": {
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"max-length": 18,
|
||||
"interval": 1,
|
||||
"tooltip": true,
|
||||
"exec": "~/.config/bin/waybar-custom-cider.sh",
|
||||
"on-click": "curl -s -X POST http://localhost:10767/api/v1/playback/playpause",
|
||||
"on-click-right": "curl -s -X POST http://localhost:10767/api/v1/playback/next",
|
||||
},
|
||||
"privacy": {
|
||||
"icon-spacing": 4,
|
||||
"icon-size": 18,
|
||||
"transition-duration": 250,
|
||||
"modules": [
|
||||
{
|
||||
"type": "screenshare",
|
||||
"tooltip": true,
|
||||
"tooltip-icon-size": 24
|
||||
},
|
||||
{
|
||||
"type": "audio-out",
|
||||
"tooltip": true,
|
||||
"tooltip-icon-size": 24
|
||||
},
|
||||
{
|
||||
"type": "audio-in",
|
||||
"tooltip": true,
|
||||
"tooltip-icon-size": 24
|
||||
}
|
||||
],
|
||||
"ignore-monitor": true,
|
||||
"ignore": [
|
||||
{
|
||||
"type": "audio-in",
|
||||
"name": "cava"
|
||||
},
|
||||
{
|
||||
"type": "screenshare",
|
||||
"name": "obs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 18,
|
||||
"spacing": 10,
|
||||
},
|
||||
"cpu": {
|
||||
"format": "cpu:{usage}%",
|
||||
"tooltip": false,
|
||||
"on-click": "ghostty -e htop",
|
||||
},
|
||||
"memory": {
|
||||
"interval": 10,
|
||||
"format": "ram:{}%",
|
||||
"tooltip-format": "total: {total:0.2f}GiB\nused: {used:0.2f}GiB\navailable: {avail:0.2f}GiB\nswap: {swapUsed:0.2f}/{swapTotal:0.2f}GiB",
|
||||
"on-click": "ghostty -e htop",
|
||||
},
|
||||
"temperature": {
|
||||
// "thermal-zone": 2,
|
||||
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
|
||||
"critical-threshold": 80,
|
||||
// "format-critical": "{temperatureC}°C {icon}",
|
||||
"format": "{temperatureC}°C {icon}",
|
||||
"format-icons": ["", "", ""],
|
||||
"on-click": "ghostty -e s-tui",
|
||||
"tooltip": false,
|
||||
},
|
||||
"backlight": {
|
||||
// "device": "acpi_video1",
|
||||
"format": "{percent}% {icon}",
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
||||
"tooltip": false,
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
// "good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15,
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-full": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
// "format-good": "", // An empty format will hide the module
|
||||
// "format-full": "",
|
||||
"format-icons": ["", "", "", "", ""],
|
||||
},
|
||||
"power-profiles-daemon": {
|
||||
"format": "{icon}",
|
||||
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
|
||||
"tooltip": true,
|
||||
"format-icons": {
|
||||
"default": "",
|
||||
"performance": "",
|
||||
"balanced": "",
|
||||
"power-saver": "",
|
||||
},
|
||||
},
|
||||
"network": {
|
||||
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||
"format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"format-ethernet": "ipv4:{ipaddr}/{cidr}",
|
||||
"tooltip-format": "{ifname} via {gwaddr} ",
|
||||
"format-linked": "{ifname} (No IP) ",
|
||||
"format-disconnected": "Disconnected ⚠",
|
||||
"format-alt": "{ifname}: {ipaddr}/{cidr}",
|
||||
},
|
||||
"pulseaudio": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "vol:{volume}%/{format_source}",
|
||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth-muted": " {icon} {format_source}",
|
||||
"format-muted": " {format_source}",
|
||||
"format-source": "{volume}%",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""],
|
||||
},
|
||||
"on-click": "pavucontrol",
|
||||
},
|
||||
"custom/power": {
|
||||
"format": "⏻ ",
|
||||
"tooltip": false,
|
||||
"menu": "on-click",
|
||||
"menu-file": "$HOME/.config/waybar/power_menu.xml", // Menu file in resources folder
|
||||
"menu-actions": {
|
||||
"shutdown": "shutdown",
|
||||
"reboot": "reboot",
|
||||
"suspend": "systemctl suspend",
|
||||
"hibernate": "systemctl hibernate",
|
||||
},
|
||||
},
|
||||
"custom/ssh-login": {
|
||||
"format": "{}",
|
||||
"interval": 1,
|
||||
// "exec-if": "who",
|
||||
"exec": "who | awk '{ print $2 }'",
|
||||
"on-click": "pkill -9 -t $(who | awk '{ print $2 }')",
|
||||
},
|
||||
},
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "bottom",
|
||||
"height": 30,
|
||||
"spacing": 1,
|
||||
"margin": 0,
|
||||
"modules-right": [
|
||||
"network",
|
||||
"clock",
|
||||
],
|
||||
"network": {
|
||||
"format-ethernet": "{ipaddr}/{cidr}",
|
||||
"format-disconnected": "disconnected"
|
||||
},
|
||||
"clock": {
|
||||
"interval": 1,
|
||||
"format": "{:%Y/%m/%d %H:%M:%S}",
|
||||
"tooltip-format": "<big><tt>{calendar}</tt></big>",
|
||||
},
|
||||
}
|
||||
]
|
||||
297
waybar/style.css
Normal file
297
waybar/style.css
Normal file
@@ -0,0 +1,297 @@
|
||||
@define-color workspaces-color @gray;
|
||||
@define-color workspaces-focused-bg @background-light;
|
||||
@define-color workspaces-focused-fg @foreground;
|
||||
@define-color workspaces-urgent-bg @red;
|
||||
@define-color workspaces-urgent-fg @background;
|
||||
|
||||
@define-color cider-color @red;
|
||||
@define-color clock-color @foreground;
|
||||
@define-color pulseaudio-color @blue;
|
||||
@define-color pulseaudio-muted-color @gray;
|
||||
@define-color network-color @magenta;
|
||||
@define-color network-disconnected-color @red;
|
||||
@define-color cpu-color @orange;
|
||||
@define-color memory-color @cyan;
|
||||
@define-color temperature-color @yellow;
|
||||
@define-color temperature-critical-color @red;
|
||||
@define-color backlight-color @white;
|
||||
@define-color battery-color @foreground;
|
||||
@define-color battery-charging-color @green;
|
||||
@define-color battery-warning-color @yellow;
|
||||
@define-color battery-critical-color @red;
|
||||
|
||||
* {
|
||||
font-family: "JetBrainsMono Nerd Font";
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
color: #ffffff;
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
/* This targets every module */
|
||||
#waybar .module {
|
||||
background-color: #1e1e2e; /* Your desired module color */
|
||||
}
|
||||
|
||||
/* Specific grouping (Optional: if you want modules to stick together in islands) */
|
||||
.modules-left, .modules-center, .modules-right {}
|
||||
|
||||
button {
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
button:hover {
|
||||
background: inherit;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* Workspaces
|
||||
* ----------------------------------------------------------------------------- */
|
||||
#workspaces button {
|
||||
padding: 0 8px;
|
||||
background-color: transparent;
|
||||
color: @workspaces-color;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: @background-light;
|
||||
color: @foreground;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
/* The "Neovim Buffer" Look:
|
||||
Active workspace is lighter background + cream text.
|
||||
No flashy underlines. */
|
||||
#workspaces button.focused {
|
||||
background-color: @background-light;
|
||||
color: @workspaces-focused-fg;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: @workspaces-urgent-bg;
|
||||
color: @workspaces-urgent-fg;
|
||||
}
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* Modules
|
||||
* ----------------------------------------------------------------------------- */
|
||||
#mode,
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#wireplumber,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#idle_inhibitor,
|
||||
#scratchpad,
|
||||
#power-profiles-daemon,
|
||||
#mpd,
|
||||
#custom-cider {
|
||||
color: @clock-color;
|
||||
font-weight: bold;
|
||||
padding: 0 10px;
|
||||
margin: 0 2px;
|
||||
background-color: transparent;
|
||||
border: none; /* Removed the underlines for a cleaner look */
|
||||
}
|
||||
|
||||
#window,
|
||||
#workspaces {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
.modules-left > widget:first-child > #workspaces { margin-left: 0; }
|
||||
.modules-right > widget:last-child > #workspaces { margin-right: 0; }
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* Module Specifics
|
||||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#battery {
|
||||
color: @battery-color;
|
||||
}
|
||||
|
||||
#battery.charging, #battery.plugged {
|
||||
color: @battery-charging-color;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: @battery-warning-color;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: @red;
|
||||
color: @background;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: @battery-critical-color;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: steps(12);
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
/* #cpu { */
|
||||
/* color: @cpu-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #memory { */
|
||||
/* color: @memory-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #disk { */
|
||||
/* color: @yellow; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #backlight { */
|
||||
/* color: @backlight-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #network { */
|
||||
/* color: @network-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #network.disconnected { */
|
||||
/* color: @network-disconnected-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #pulseaudio { */
|
||||
/* color: @pulseaudio-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #pulseaudio.muted { */
|
||||
/* color: @pulseaudio-muted-color; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #wireplumber { */
|
||||
/* color: @foreground; */
|
||||
/* } */
|
||||
/**/
|
||||
/* #wireplumber.muted { */
|
||||
/* color: @red; */
|
||||
/* } */
|
||||
|
||||
#custom-media {
|
||||
color: @green;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
color: @temperature-color;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
color: @temperature-critical-color;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: @background-light;
|
||||
border-radius: 4px; /* Slight roundness for the tray container */
|
||||
padding: 0 8px;
|
||||
}
|
||||
|
||||
#tray > .passive {
|
||||
-gtk-icon-effect: dim;
|
||||
}
|
||||
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
color: @gray;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
color: @foreground;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#mpd.disconnected {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#mpd.stopped {
|
||||
color: @gray;
|
||||
}
|
||||
|
||||
#mpd.paused {
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: @background-light;
|
||||
color: @foreground;
|
||||
padding: 0 5px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state {
|
||||
color: @foreground;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state > label.locked {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#scratchpad {
|
||||
background: transparent;
|
||||
color: @gray;
|
||||
}
|
||||
|
||||
#scratchpad.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#privacy {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#privacy-item {
|
||||
padding: 0 5px;
|
||||
color: @foreground;
|
||||
}
|
||||
|
||||
#privacy-item.screenshare {
|
||||
color: @orange;
|
||||
}
|
||||
|
||||
#privacy-item.audio-in {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#privacy-item.audio-out {
|
||||
color: @blue;
|
||||
}
|
||||
@@ -9,6 +9,3 @@ ohmyzsh/ohmyzsh path:plugins/git
|
||||
|
||||
# popular fish-like plugins
|
||||
zsh-users/zsh-autosuggestions
|
||||
|
||||
# nvm
|
||||
lukechilds/zsh-nvm
|
||||
|
||||
1
zsh/.zsh_plugins_darwin.txt
Normal file
1
zsh/.zsh_plugins_darwin.txt
Normal file
@@ -0,0 +1 @@
|
||||
lukechilds/zsh-nvm
|
||||
@@ -14,7 +14,9 @@ export PATH="/opt/homebrew/sbin:$PATH"
|
||||
export LIBRARY_PATH="$LIBRARY_PATH:/opt/homebrew/lib"
|
||||
|
||||
# cargo
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
source "$HOME/.cargo/env"
|
||||
fi
|
||||
|
||||
# language environment
|
||||
export LANG=en_US.UTF-8
|
||||
@@ -46,7 +48,7 @@ export POETRY_HOME="$XDG_DATA_HOME/poetry"
|
||||
command -v poetry >/dev/null || export PATH="$POETRY_HOME/bin:$PATH"
|
||||
|
||||
# gnupg
|
||||
export GPG_TTY=$TTY
|
||||
export GPG_TTY=$(tty)
|
||||
|
||||
# aflabs
|
||||
export USER_UID=$(id -u)
|
||||
|
||||
11
zsh/.zshrc
11
zsh/.zshrc
@@ -12,11 +12,20 @@ export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#ffffff,bg=cyan,bold,underline"
|
||||
source $ZDOTDIR/.antidote/antidote.zsh
|
||||
antidote load
|
||||
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
antidote load ${ZDOTDIR:-~}/.zsh_plugins_darwin.txt
|
||||
fi
|
||||
|
||||
unsetopt autocd
|
||||
|
||||
# pyenv
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
eval "$(pyenv init - zsh)"
|
||||
eval "$(pyenv virtualenv-init - zsh)"
|
||||
fi
|
||||
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
|
||||
fi
|
||||
|
||||
# ggman
|
||||
eval "$(ggman shellrc)"
|
||||
|
||||
@@ -1,7 +1,13 @@
|
||||
alias z="exec zsh"
|
||||
alias t=tmux_attach
|
||||
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
alias n=nvim_ve
|
||||
# alias vim=nvim_ve
|
||||
alias vim=nvim_ve
|
||||
elif [[ "$OSTYPE" == "linux"* ]]; then
|
||||
alias n=nvim
|
||||
fi
|
||||
|
||||
alias s="ssh-menu"
|
||||
|
||||
# docker
|
||||
@@ -18,6 +24,7 @@ alias accenton="defaults write -g ApplePressAndHoldEnabled -bool true"
|
||||
alias accentoff="defaults write -g ApplePressAndHoldEnabled -bool false"
|
||||
|
||||
# git
|
||||
alias gpo="git push origin"
|
||||
alias gros="git reset origin/$(git_current_branch) --soft"
|
||||
alias gcan="git commit -v --amend --no-edit"
|
||||
alias glogaa="git log --oneline --graph --all --pretty=format:\"%C(auto)%h %C(blue)(%aL/%cL)%C(auto)%(decorate) %s%Creset\""
|
||||
|
||||
@@ -8,8 +8,6 @@ function nvim_ve {
|
||||
fi
|
||||
}
|
||||
|
||||
alias nvim=nvim_ve
|
||||
|
||||
function afm {
|
||||
RES=$(curl -s "https://$1/api/monitoring/requirements")
|
||||
COUNT=$(echo "$RES" | grep -c $2)
|
||||
|
||||
Reference in New Issue
Block a user