Cleanup and squash

Author Mitja Felicijan <mitja.felicijan@gmail.com> 2026-04-28 02:27:15 +0200
Committer Mitja Felicijan <mitja.felicijan@gmail.com> 2026-04-29 15:18:35 +0200
Commit 3cc3abc920cc96a53427c221a7a9e4623c0b20b4 (patch)
-rw-r--r-- .alacritty.toml 2
-rw-r--r-- .black.rasi 37
-rw-r--r-- .config/i3/config 174
-rw-r--r-- .config/i3status/config 25
-rw-r--r-- .gitconfig 2
-rwxr-xr-x .shenanigans.sh 33
-rw-r--r-- .xinitrc 2
7 files changed, 249 insertions, 26 deletions
diff --git a/.alacritty.toml b/.alacritty.toml
...
7
  
7
  
8
[font]
8
[font]
9
normal = { family = "Berkeley Mono", style = "Bold" }
9
normal = { family = "Berkeley Mono", style = "Bold" }
10
size = 10
10
size = 9
11
  
11
  
12
[colors.primary]
12
[colors.primary]
13
background = '#000000'
13
background = '#000000'
...
diff --git a/.black.rasi b/.black.rasi
  
1
configuration {
  
2
	show-icons: false;
  
3
	disable-history: false;
  
4
}
  
5
  
  
6
* {
  
7
	font: "Berkeley Mono Bold 14";
  
8
	foreground: white;
  
9
	background-color: black;
  
10
}
  
11
  
  
12
#window {
  
13
	background-color: black;
  
14
	border: 2;
  
15
	border-color: white;
  
16
	padding: 20;
  
17
	width: 800;
  
18
}
  
19
  
  
20
prompt, inputbar, entry {
  
21
	text-color: white;
  
22
	padding: 0 10 10 0;
  
23
}
  
24
  
  
25
listview {
  
26
	lines: 20;
  
27
	columns: 1;
  
28
}
  
29
  
  
30
element-text {
  
31
	text-color: khaki;
  
32
}
  
33
  
  
34
element-text selected {
  
35
	text-color: black;
  
36
	background-color: white;
  
37
}
diff --git a/.config/i3/config b/.config/i3/config
  
1
set $mod Mod4
  
2
  
  
3
font pango:Berkeley Mono Bold 7
  
4
exec --no-startup-id dex --autostart --environment i3
  
5
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
  
6
exec --no-startup-id nm-applet
  
7
  
  
8
# Use pactl to adjust volume in PulseAudio.
  
9
set $refresh_i3status killall -SIGUSR1 i3status
  
10
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
  
11
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
  
12
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
  
13
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
  
14
  
  
15
# My keybinds
  
16
bindsym $mod+bracketright exec --no-startup-id pats -t
  
17
bindsym $mod+m exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
  
18
bindsym $mod+l exec --no-startup-id i3lock
  
19
bindsym $mod+p exec --no-startup-id "rofi -show drun -theme ~/.black.rasi"
  
20
bindsym $mod+Escape exec --no-startup-id "maim -s | xclip -selection clipboard -t image/png"
  
21
  
  
22
# Use Mouse+$mod to drag floating windows to their wanted position
  
23
floating_modifier $mod
  
24
tiling_drag modifier titlebar
  
25
  
  
26
# start a terminal
  
27
bindsym $mod+Return exec alacritty
  
28
  
  
29
# kill focused window
  
30
bindsym $mod+Shift+q kill
  
31
  
  
32
# change focus
  
33
bindsym $mod+Left focus left
  
34
bindsym $mod+Down focus down
  
35
bindsym $mod+Up focus up
  
36
bindsym $mod+Right focus right
  
37
  
  
38
# move focused window
  
39
bindsym $mod+Shift+j move left
  
40
bindsym $mod+Shift+k move down
  
41
bindsym $mod+Shift+l move up
  
42
bindsym $mod+Shift+semicolon move right
  
43
  
  
44
# alternatively, you can use the cursor keys:
  
45
bindsym $mod+Shift+Left move left
  
46
bindsym $mod+Shift+Down move down
  
47
bindsym $mod+Shift+Up move up
  
48
bindsym $mod+Shift+Right move right
  
49
  
  
50
# split in horizontal orientation
  
51
bindsym $mod+h split h
  
52
  
  
53
# split in vertical orientation
  
54
bindsym $mod+v split v
  
55
  
  
56
# enter fullscreen mode for the focused container
  
57
bindsym $mod+f fullscreen toggle
  
58
  
  
59
# change container layout (stacked, tabbed, toggle split)
  
60
bindsym $mod+s layout stacking
  
61
bindsym $mod+w layout tabbed
  
62
bindsym $mod+e layout toggle split
  
63
  
  
64
# toggle tiling / floating
  
65
bindsym $mod+Shift+space floating toggle
  
66
  
  
67
# change focus between tiling / floating windows
  
68
bindsym $mod+space focus mode_toggle
  
69
  
  
70
# focus the parent container
  
71
bindsym $mod+a focus parent
  
72
  
  
73
# focus the child container
  
74
bindsym $mod+d focus child
  
75
  
  
76
# Define names for default workspaces for which we configure key bindings later on.
  
77
# We use variables to avoid repeating the names in multiple places.
  
78
set $ws1 "1"
  
79
set $ws2 "2"
  
80
set $ws3 "3"
  
81
set $ws4 "4"
  
82
set $ws5 "5"
  
83
set $ws6 "6"
  
84
set $ws7 "7"
  
85
set $ws8 "8"
  
86
set $ws9 "9"
  
87
set $ws10 "10"
  
88
  
  
89
# switch to workspace
  
90
bindsym $mod+1 workspace number $ws1
  
91
bindsym $mod+2 workspace number $ws2
  
92
bindsym $mod+3 workspace number $ws3
  
93
bindsym $mod+4 workspace number $ws4
  
94
bindsym $mod+5 workspace number $ws5
  
95
bindsym $mod+6 workspace number $ws6
  
96
bindsym $mod+7 workspace number $ws7
  
97
bindsym $mod+8 workspace number $ws8
  
98
bindsym $mod+9 workspace number $ws9
  
99
bindsym $mod+0 workspace number $ws10
  
100
  
  
101
# move focused container to workspace
  
102
bindsym $mod+Shift+1 move container to workspace number $ws1
  
103
bindsym $mod+Shift+2 move container to workspace number $ws2
  
104
bindsym $mod+Shift+3 move container to workspace number $ws3
  
105
bindsym $mod+Shift+4 move container to workspace number $ws4
  
106
bindsym $mod+Shift+5 move container to workspace number $ws5
  
107
bindsym $mod+Shift+6 move container to workspace number $ws6
  
108
bindsym $mod+Shift+7 move container to workspace number $ws7
  
109
bindsym $mod+Shift+8 move container to workspace number $ws8
  
110
bindsym $mod+Shift+9 move container to workspace number $ws9
  
111
bindsym $mod+Shift+0 move container to workspace number $ws10
  
112
  
  
113
# reload the configuration file
  
114
bindsym $mod+Shift+c reload
  
115
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  
116
bindsym $mod+Shift+r restart
  
117
# exit i3 (logs you out of your X session)
  
118
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
  
119
  
  
120
# resize window (you can also use the mouse for that)
  
121
mode "resize" {
  
122
        # same bindings, but for the arrow keys
  
123
        bindsym Left resize shrink width 10 px or 10 ppt
  
124
        bindsym Down resize grow height 10 px or 10 ppt
  
125
        bindsym Up resize shrink height 10 px or 10 ppt
  
126
        bindsym Right resize grow width 10 px or 10 ppt
  
127
  
  
128
        # back to normal: Enter or Escape or $mod+r
  
129
        bindsym Return mode "default"
  
130
        bindsym Escape mode "default"
  
131
        bindsym $mod+r mode "default"
  
132
}
  
133
  
  
134
bindsym $mod+r mode "resize"
  
135
  
  
136
# No title bars
  
137
for_window [class="^.*"] border pixel 2
  
138
  
  
139
# Do not follow mouse for focus
  
140
focus_follows_mouse no
  
141
  
  
142
set $primary     #c3b091
  
143
set $secondary   #ff4500
  
144
set $dark        #333333
  
145
set $light       #ffffff
  
146
  
  
147
# Start i3bar to display a workspace bar (plus the system information i3status
  
148
# finds out, if available)
  
149
bar {
  
150
	status_command i3status
  
151
	position top
  
152
	colors {
  
153
		background #000000
  
154
		separator  #191919
  
155
		#                       border          background      text
  
156
		focused_workspace       $primary        $primary        $dark
  
157
		inactive_workspace      $dark           $dark           $light
  
158
		urgent_workspace        $secondary      $secondary      $light
  
159
  
  
160
	}
  
161
}
  
162
  
  
163
#                       border        background    text          indicator 
  
164
client.focused          $primary      $primary      $light        $light
  
165
client.unfocused        $dark         $dark         $light        $light
  
166
client.focused_inactive $dark         $dark         $light        $light
  
167
client.urgent           $secondary    $secondary    $light        $light
  
168
  
  
169
# Workspace 1 only has floating windows
  
170
for_window [workspace="1"] floating enable
  
171
  
  
172
# Expections for opening in floating mode where XSetClassHint is set to floating
  
173
for_window [class="^(mpv|SimpleScreenRecorder|Thunar|transmission)$"] floating enable
  
174
for_window [title="^(Stalag)$"] floating enable
diff --git a/.config/i3status/config b/.config/i3status/config
  
1
general {
  
2
	colors = true
  
3
	interval = 5
  
4
}
  
5
  
  
6
order += "disk /"
  
7
order += "cpu_usage"
  
8
order += "memory"
  
9
order += "tztime local"
  
10
  
  
11
disk "/" {
  
12
	format = "Disk: %avail"
  
13
}
  
14
  
  
15
cpu_usage {
  
16
	format = "CPU: %usage"
  
17
}
  
18
  
  
19
memory {
  
20
	format = "Memory: %used"
  
21
}
  
22
  
  
23
tztime local {
  
24
	format = "%a %Y-%m-%d %H:%M:%S"
  
25
}
diff --git a/.gitconfig b/.gitconfig
...
16
[gpg]
16
[gpg]
17
	format = ssh
17
	format = ssh
18
[alias]
18
[alias]
19
	pushall = !sh -c \"git remote | xargs -L1 git push --all\"
19
	pushall = !sh -c \"git remote | xargs -L1 git push --all --force-with-lease\"
20
	tree = log --oneline --graph
20
	tree = log --oneline --graph
21
[filter "lfs"]
21
[filter "lfs"]
22
	required = true
22
	required = true
...
diff --git a/.shenanigans.sh b/.shenanigans.sh
1
# Software list (Void Linux):
1
# Software list:
2
#   void-repo-nonfree void-repo-multilib void-repo-multilib-nonfree
  
3
#   file-roller xfce4-plugins thunar-archive-plugin
2
#   file-roller xfce4-plugins thunar-archive-plugin
4
#   lm_sensors conky maim xlockmore picom cwm xclip xsel xsetroot xdotool
3
#   vim git tmux maim xclip xsel mc htop entr cifs-utils rsync jq rofi fd
5
#   xss-lock wmctrl zip mc htop entr cifs-utils rsync jq rofi st fd
4
#   rsync curl hstr tree make gdb nvtop ctags stow newsboat mpv lazygit
6
#   clang clang-tools-extra vim git curl tmux hstr tree make cmake gdb
  
7
#   nvtop ctags stow newsboat mpv rsync python3-pipx lazygit
  
8
# Additonal stuff:
5
# Additonal stuff:
9
#   go install golang.org/x/tools/gopls@latest
6
#   go install golang.org/x/tools/gopls@latest
10
#   pipx install pyright mdformat
  
11
#   pipx inject mdformat mdformat-gfm
  
12
  
7
  
13
# Only run if the script is being sourced (bashrc).
8
# Only run if the script is being sourced (bashrc).
14
if [[ "${BASH_SOURCE[0]}" != "${0}" ]]; then
9
if [[ "${BASH_SOURCE[0]}" != "${0}" ]]; then
...
35
	alias tmux='tmux -T 256 -u'
30
	alias tmux='tmux -T 256 -u'
36
	alias server='python3 -m http.server 6969'
31
	alias server='python3 -m http.server 6969'
37
	alias newsboat='newsboat -r -u ~/.feeds.txt'
32
	alias newsboat='newsboat -r -u ~/.feeds.txt'
38
	alias n='cd ~/Notes && vim toc.txt'
33
	alias emptytrash='gio trash --empty'
39
  
34
  
40
	# Custom folder jump commands.
35
	# Custom folder jump commands.
41
	alias j='cd ~/Junk'
36
	alias j='cd ~/Junk'
...
49
	export HISTFILESIZE=
44
	export HISTFILESIZE=
50
	export HISTFILE=~/.bash_history_infinite
45
	export HISTFILE=~/.bash_history_infinite
51
	PROMPT_COMMAND="history -a; ${PROMPT_COMMAND}"
46
	PROMPT_COMMAND="history -a; ${PROMPT_COMMAND}"
52
	# PROMPT_COMMAND="history -a; history -n; ${PROMPT_COMMAND}"
  
53
	bind '"\e[A": history-search-backward'
47
	bind '"\e[A": history-search-backward'
54
	bind '"\e[B": history-search-forward'
48
	bind '"\e[B": history-search-forward'
55
	export HSTR_CONFIG=hicolor
49
	export HSTR_CONFIG=hicolor
...
70
		"ssh.zip $HOME/.ssh"
64
		"ssh.zip $HOME/.ssh"
71
		"bash_history_infinite.zip $HOME/.bash_history_infinite"
65
		"bash_history_infinite.zip $HOME/.bash_history_infinite"
72
		"projects.zip $HOME/Projects"
66
		"projects.zip $HOME/Projects"
73
		"notes.zip $HOME/Notes"
  
74
		"twow.zip $HOME/Games/turtlewow/WTF $HOME/Games/turtlewow/wow.sh"
  
75
		"vanilla+.zip $HOME/Games/vanilla+/WTF $HOME/Games/vanilla+/wow.sh"
  
76
	)
67
	)
77
  
68
  
78
	for entry in "${archive_sets[@]}"; do
69
	for entry in "${archive_sets[@]}"; do
...
83
	rm -Rf /tmp/$SNAPSHOT
74
	rm -Rf /tmp/$SNAPSHOT
84
}
75
}
85
  
76
  
86
micstatus() {
  
87
	pactl get-source-mute @DEFAULT_SOURCE@ | grep -q "no" && echo 1 || echo 0;
  
88
}
  
89
  
  
90
slugify() {
77
slugify() {
91
  local text="$1"
78
	local text="$1"
92
  echo "$text" | tr '[:upper:]' '[:lower:]' | sed -E 's/[^a-z0-9]+/-/g; s/^-+|-+$//g'
79
	echo "$text" | tr '[:upper:]' '[:lower:]' | sed -E 's/[^a-z0-9]+/-/g; s/^-+|-+$//g'
93
}
80
}
94
  
81
  
95
worldclocks() {
82
worldclocks() {
96
  printf "%-18s %s\n" "Local:" "$(TZ='Europe/Ljubljana' date +'%a %H:%M')"
83
	printf "%-18s %s\n" "Local:" "$(TZ='Europe/Ljubljana' date +'%a %H:%M')"
97
  printf "%-18s %s\n" "Brisbane:" "$(TZ='Australia/Brisbane' date +'%a %H:%M')"
84
	printf "%-18s %s\n" "Brisbane:" "$(TZ='Australia/Brisbane' date +'%a %H:%M')"
98
  printf "%-18s %s\n" "San Francisco:" "$(TZ='America/Los_Angeles' date +'%a %H:%M')"
85
	printf "%-18s %s\n" "San Francisco:" "$(TZ='America/Los_Angeles' date +'%a %H:%M')"
99
  printf "%-18s %s\n" "New York:" "$(TZ='America/New_York' date +'%a %H:%M')"
86
	printf "%-18s %s\n" "New York:" "$(TZ='America/New_York' date +'%a %H:%M')"
100
}
87
}
diff --git a/.xinitrc b/.xinitrc
...
10
xss-lock -- xlock &
10
xss-lock -- xlock &
11
xinput --set-prop "pointer:Logitech MX Master 3" "libinput Accel Speed" -0.3
11
xinput --set-prop "pointer:Logitech MX Master 3" "libinput Accel Speed" -0.3
12
  
12
  
13
exec glitch
13
exec i3