summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Chudnick <sam@chudnick.com>2023-06-11 08:00:24 -0400
committerSam Chudnick <sam@chudnick.com>2023-06-11 08:00:24 -0400
commit12ce8bdd65d3b5fcd6e8227eaecd5f772a90f8da (patch)
tree5be7566c5ef41877e1d03a013667fdae1aedf252
parent9e82c96713989a7565eadac505b36e3dbe91cd5a (diff)
Configuration file updates and additions.
-rw-r--r--.config/calcurse/caldav/config13
-rw-r--r--.config/calcurse/conf16
-rwxr-xr-x.config/calcurse/hooks/post-save47
-rwxr-xr-x.config/calcurse/hooks/pre-load17
-rw-r--r--.config/calcurse/keys4
-rw-r--r--.config/dunst/dunstrc4
-rw-r--r--.config/firejail/firefox.profile68
-rw-r--r--.config/firejail/jellyfinmediaplayer.profile30
-rw-r--r--.config/firejail/neomutt.profile10
-rw-r--r--.config/firejail/newsboat.profile10
-rw-r--r--.config/fontconfig/fonts.conf3
-rw-r--r--.config/htop/htoprc8
-rw-r--r--.config/khard/khard.conf16
-rw-r--r--.config/mutt/gruvbox87
-rw-r--r--.config/mutt/muttrc35
-rw-r--r--.config/newsboat/config35
-rw-r--r--.config/picom/picom.conf35
-rw-r--r--.config/shell/aliasrc17
-rw-r--r--.config/sxhkd/sxhkdrc24
-rw-r--r--.config/x11/xinitrc25
-rw-r--r--.config/x11/xresources87
-rw-r--r--.config/zsh/.zprofile2
-rw-r--r--.config/zsh/.zshrc2
23 files changed, 425 insertions, 170 deletions
diff --git a/.config/calcurse/caldav/config b/.config/calcurse/caldav/config
new file mode 100644
index 0000000..75dfada
--- /dev/null
+++ b/.config/calcurse/caldav/config
@@ -0,0 +1,13 @@
1[General]
2Binary = calcurse
3Hostname = radicale.chudnick.com:443
4Path = /sam/d1b7aa05-a00b-cb40-bdef-b6ed70a23944/
5AuthMethod = basic
6InsecureSSL = No
7HTTPS = Yes
8DryRun = No
9Verbose = Yes
10SyncFilter = cal
11
12[Auth]
13Username = sam
diff --git a/.config/calcurse/conf b/.config/calcurse/conf
index b46b0a7..ecf4bba 100644
--- a/.config/calcurse/conf
+++ b/.config/calcurse/conf
@@ -1,13 +1,13 @@
1appearance.calendarview=monthly 1appearance.calendarview=monthly
2appearance.compactpanels=no 2appearance.compactpanels=no
3appearance.defaultpanel=calendar 3appearance.defaultpanel=todo
4appearance.layout=5 4appearance.layout=5
5appearance.notifybar=yes 5appearance.notifybar=yes
6appearance.sidebarwidth=2 6appearance.sidebarwidth=22
7appearance.theme=blue on default 7appearance.theme=cyan on default
8appearance.todoview=hide-completed 8appearance.todoview=hide-completed
9appearance.headingpos=right-justified 9appearance.headingpos=right-justified
10daemon.enable=no 10daemon.enable=yes
11daemon.log=no 11daemon.log=no
12format.inputdate=1 12format.inputdate=1
13format.notifydate=%a %F 13format.notifydate=%a %F
@@ -19,10 +19,10 @@ general.autosave=yes
19general.confirmdelete=yes 19general.confirmdelete=yes
20general.confirmquit=no 20general.confirmquit=no
21general.firstdayofweek=monday 21general.firstdayofweek=monday
22general.periodicsave=0 22general.periodicsave=10
23general.systemdialogs=yes 23general.systemdialogs=no
24notification.command=printf '\a' 24notification.command=notify-send "Upcoming Appointment"
25notification.notifyall=flagged-only 25notification.notifyall=all
26notification.warning=300 26notification.warning=300
27appearance.headerline=yes 27appearance.headerline=yes
28appearance.eventseparator=yes 28appearance.eventseparator=yes
diff --git a/.config/calcurse/hooks/post-save b/.config/calcurse/hooks/post-save
new file mode 100755
index 0000000..8836316
--- /dev/null
+++ b/.config/calcurse/hooks/post-save
@@ -0,0 +1,47 @@
1#!/bin/sh
2#
3# This is an example hook. It does two things whenever you save the data files:
4#
5# 1. Make a commit if the calcurse directories contain a Git repository.
6# 2. Synchronize with a CalDAV server if calcurse-caldav is configured.
7#
8# In order to install this hook, copy this file to
9# $XDG_CONFIG_HOME/calcurse/hooks/ (~/.config/calcurse/hooks/) or
10# ~/.calcurse/hooks/ if using ~/.calcurse.
11
12data_dir="$HOME/.calcurse"
13config_dir="$HOME/.calcurse"
14
15if [ ! -d "$data_dir" ]; then
16 data_dir="${XDG_DATA_HOME:-$HOME/.local/share}/calcurse"
17 config_dir="${XDG_CONFIG_HOME:-$HOME/.config}/calcurse"
18fi
19
20# Do not do anything when synchronizing with a CalDAV server.
21[ -f "$data_dir/caldav/lock" ] && exit
22
23# If the directory is under version control, create a Git commit.
24commit_dir() {
25 cd "$1" >/dev/null 2>&1 || return
26 shift
27 if [ -d .git ] && command -v git >/dev/null; then
28 git add "$@"
29 if ! git diff-index --quiet --cached HEAD; then
30 git commit -m "Automatic commit by the post-save hook"
31 fi
32 fi
33}
34
35commit_dir "$data_dir" apts todo
36commit_dir "$config_dir" conf keys
37
38# Optionally run the CalDAV synchronization script in the background.
39cd "$data_dir" || exit
40if [ -d caldav ] && command -v calcurse-caldav >/dev/null; then
41 (
42 date="$(date +'%b %d %H:%M:%S')"
43 echo "$date Running calcurse-caldav from the post-save hook..."
44 CALCURSE_CALDAV_PASSWORD=$(pass show web/radicale.chudnick.com | head -1) calcurse-caldav
45 echo
46 ) >>caldav/log 2>&1 &
47fi
diff --git a/.config/calcurse/hooks/pre-load b/.config/calcurse/hooks/pre-load
new file mode 100755
index 0000000..dc25771
--- /dev/null
+++ b/.config/calcurse/hooks/pre-load
@@ -0,0 +1,17 @@
1#!/bin/sh
2[ -d "$HOME/.calcurse" ] && data_dir="$HOME/.calcurse" || data_dir="${XDG_DATA_HOME:-$HOME/.local/share}/calcurse"
3
4cd "$data_dir" || exit
5
6# Do not do anything when synchronizing with a CalDAV server.
7[ -f caldav/lock ] && exit
8
9# Run the CalDAV synchronization script in the background.
10if [ -d caldav ] && command -v calcurse-caldav >/dev/null; then
11 (
12 date="$(date +'%b %d %H:%M:%S')"
13 echo "$date Running calcurse-caldav from the pre-load hook..."
14 CALCURSE_CALDAV_PASSWORD=$(pass web/radicale.chudnick.com | head -1) calcurse-caldav
15 echo
16 ) >>caldav/log 2>&1 &
17fi
diff --git a/.config/calcurse/keys b/.config/calcurse/keys
index 301d367..0f5ee8d 100644
--- a/.config/calcurse/keys
+++ b/.config/calcurse/keys
@@ -27,7 +27,7 @@ generic-add-todo ^T
27generic-prev-day T ^H 27generic-prev-day T ^H
28generic-next-day t ^L 28generic-next-day t ^L
29generic-prev-week W ^K 29generic-prev-week W ^K
30generic-next-week w RET 30generic-next-week w
31generic-prev-month M 31generic-prev-month M
32generic-next-month m 32generic-next-month m
33generic-prev-year Y 33generic-prev-year Y
@@ -45,7 +45,7 @@ end-of-week $
45add-item a A 45add-item a A
46del-item d D 46del-item d D
47edit-item e E 47edit-item e E
48view-item v V 48view-item v V RET
49pipe-item | 49pipe-item |
50flag-item ! 50flag-item !
51repeat r 51repeat r
diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc
index fda72f3..efb0582 100644
--- a/.config/dunst/dunstrc
+++ b/.config/dunst/dunstrc
@@ -5,12 +5,12 @@
5 geometry = "0x5-2+25" 5 geometry = "0x5-2+25"
6 indicate_hidden = yes 6 indicate_hidden = yes
7 shrink = no 7 shrink = no
8 transparency = 10 8 #transparency = 10
9 notification_height = 0 9 notification_height = 0
10 separator_height = 2 10 separator_height = 2
11 padding = 8 11 padding = 8
12 horizontal_padding = 8 12 horizontal_padding = 8
13 frame_width = 3 13 #frame_width = 3
14 frame_color = "#666666" 14 frame_color = "#666666"
15 separator_color = frame 15 separator_color = frame
16 sort = yes 16 sort = yes
diff --git a/.config/firejail/firefox.profile b/.config/firejail/firefox.profile
index 158cf24..8031c85 100644
--- a/.config/firejail/firefox.profile
+++ b/.config/firejail/firefox.profile
@@ -23,29 +23,65 @@ whitelist /usr/share/gtk-doc/html
23whitelist /usr/share/mozilla 23whitelist /usr/share/mozilla
24whitelist /usr/share/webext 24whitelist /usr/share/webext
25whitelist ${HOME}/repos/website 25whitelist ${HOME}/repos/website
26whitelist ${HOME}/repos/homelab_iac/docs
26whitelist ${HOME}/documents/local_webpages/ 27whitelist ${HOME}/documents/local_webpages/
28whitelist ${HOME}/documents/downloads/
29whitelist ${HOME}/documents/isos/
30read-only ${HOME}/documents/isos
27include whitelist-usr-share-common.inc 31include whitelist-usr-share-common.inc
28 32
29# firefox requires a shell to launch on Arch. 33# Access to GPG and (limited-scope) passwords for browserpass
30#private-bin bash,dbus-launch,dbus-send,env,firefox,sh,which 34writable-run-user
31# Fedora use shell scripts to launch firefox, at least this is required 35noblacklist ${HOME}/.gnupg
32#private-bin basename,bash,cat,dirname,expr,false,firefox,firefox-wayland,getenforce,ln,mkdir,pidof,restorecon,rm,rmdir,sed,sh,tclsh,true,uname 36whitelist ${HOME}/.gnupg
33# private-etc must first be enabled in firefox-common.profile 37noblacklist ${RUNUSER}/gnupg
34#private-etc firefox 38
39noblacklist ${HOME}/.local/share/password-store
40whitelist ${HOME}/.local/share/password-store/web
41whitelist ${HOME}/.local/share/password-store/homelab/user
42whitelist ${HOME}/.local/share/password-store/homelab/proxmox
43whitelist ${HOME}/.local/share/password-store/homelab/proxmox-backup
35 44
36dbus-user filter 45dbus-user filter
37dbus-user.own org.mozilla.Firefox.* 46dbus-user.own org.mozilla.Firefox.*
38dbus-user.own org.mozilla.firefox.* 47dbus-user.own org.mozilla.firefox.*
39dbus-user.own org.mpris.MediaPlayer2.firefox.* 48dbus-user.own org.mpris.MediaPlayer2.firefox.*
40# Uncomment or put in your firefox.local to enable native notifications.
41#dbus-user.talk org.freedesktop.Notifications
42# Uncomment or put in your firefox.local to allow to inhibit screensavers
43#dbus-user.talk org.freedesktop.ScreenSaver
44# Uncomment or put in your firefox.local for plasma browser integration
45#dbus-user.own org.mpris.MediaPlayer2.plasma-browser-integration
46#dbus-user.talk org.kde.JobViewServer
47#dbus-user.talk org.kde.kuiserver
48ignore dbus-user none 49ignore dbus-user none
49 50
50# Redirect 51noblacklist ${HOME}/.pki
51include firefox-common.profile 52noblacklist ${HOME}/.local/share/pki
53mkdir ${HOME}/.pki
54mkdir ${HOME}/.local/share/pki
55whitelist ${DOWNLOADS}
56whitelist ${HOME}/.pki
57whitelist ${HOME}/.local/share/pki
58include whitelist-common.inc
59include whitelist-var-common.inc
60
61apparmor
62caps.drop all
63#machine-id
64netfilter
65nodvd
66nogroups
67nonewprivs
68noroot
69notv
70?BROWSER_DISABLE_U2F: nou2f
71protocol unix,inet,inet6,netlink
72seccomp !chroot
73shell none
74disable-mnt
75?BROWSER_DISABLE_U2F: private-dev
76private-tmp
77dbus-user none
78dbus-system none
79
80include disable-common.inc
81include disable-devel.inc
82include disable-exec.inc
83include disable-interpreters.inc
84include disable-programs.inc
85
86# Breaks GPG when enabled
87#include whitelist-runuser-common.inc
diff --git a/.config/firejail/jellyfinmediaplayer.profile b/.config/firejail/jellyfinmediaplayer.profile
new file mode 100644
index 0000000..3575ec6
--- /dev/null
+++ b/.config/firejail/jellyfinmediaplayer.profile
@@ -0,0 +1,30 @@
1include globals.local
2
3name jellyfinmediaplayer
4
5dbus-user filter
6ignore dbus-user none
7
8apparmor
9caps.drop all
10netfilter
11nodvd
12nogroups
13nonewprivs
14noroot
15notv
16protocol unix,inet,inet6,netlink
17seccomp !chroot
18shell none
19disable-mnt
20private-tmp
21private-dev
22dbus-user none
23dbus-system none
24
25include disable-common.inc
26include disable-devel.inc
27include disable-exec.inc
28include disable-interpreters.inc
29include disable-programs.inc
30include disable-shell.inc
diff --git a/.config/firejail/neomutt.profile b/.config/firejail/neomutt.profile
index 0a43c6f..0934bd1 100644
--- a/.config/firejail/neomutt.profile
+++ b/.config/firejail/neomutt.profile
@@ -16,6 +16,7 @@ whitelist ${HOME}/.mbsyncrc
16whitelist ${HOME}/.config/mbsync 16whitelist ${HOME}/.config/mbsync
17whitelist ${HOME}/.config/msmtp 17whitelist ${HOME}/.config/msmtp
18whitelist ${HOME}/.w3m 18whitelist ${HOME}/.w3m
19whitelist ${HOME}/attachments
19 20
20noblacklist ${HOME}/.Mail 21noblacklist ${HOME}/.Mail
21noblacklist ${HOME}/.cache/mutt 22noblacklist ${HOME}/.cache/mutt
@@ -31,22 +32,25 @@ noblacklist ${HOME}/.mbsyncrc
31noblacklist ${HOME}/.config/mbsync 32noblacklist ${HOME}/.config/mbsync
32noblacklist ${HOME}/.config/msmtp 33noblacklist ${HOME}/.config/msmtp
33noblacklist ${HOME}/.w3m 34noblacklist ${HOME}/.w3m
35whitelist ${HOME}/attachments
34 36
35# Access to GPG for encrypting/decrypting/signing mail and passwords with pass 37# Access to GPG for encrypting/decrypting/signing mail and passwords with pass
36whitelist ${HOME}/.gnupg
37noblacklist ${HOME}/.gnupg 38noblacklist ${HOME}/.gnupg
38whitelist ${RUNUSER}/gnupg 39whitelist ${HOME}/.gnupg
40noblacklist ${RUNUSER}/gnupg
39 41
40# This assumes you keep mail account passwords under a separate directory named mail 42# This assumes you keep mail account passwords under a separate directory named mail
41# This to avoid exposing all passwords to the sandbox, only necessary ones 43# This to avoid exposing all passwords to the sandbox, only necessary ones
44noblacklist ${HOME}/.local/share/password-store
42whitelist ${HOME}/.local/share/password-store/mail 45whitelist ${HOME}/.local/share/password-store/mail
43noblacklist ${HOME}/.local/share/password-store/mail
44 46
45# abook 47# abook
46whitelist ${HOME}/.config/abook 48whitelist ${HOME}/.config/abook
47whitelist ${HOME}/.local/share/abook 49whitelist ${HOME}/.local/share/abook
48 50
51# Breaks GPG when enabled
49#include whitelist-runuser-common.inc 52#include whitelist-runuser-common.inc
53
50writable-run-user 54writable-run-user
51blacklist /tmp/.X11-unix 55blacklist /tmp/.X11-unix
52blacklist ${RUNUSER}/wayland-* 56blacklist ${RUNUSER}/wayland-*
diff --git a/.config/firejail/newsboat.profile b/.config/firejail/newsboat.profile
index 0de5928..ebdc76e 100644
--- a/.config/firejail/newsboat.profile
+++ b/.config/firejail/newsboat.profile
@@ -24,6 +24,16 @@ include whitelist-common.inc
24include whitelist-runuser-common.inc 24include whitelist-runuser-common.inc
25include whitelist-var-common.inc 25include whitelist-var-common.inc
26 26
27# Access to GPG for encrypting/decrypting/signing mail and passwords with pass
28noblacklist ${HOME}/.gnupg
29whitelist ${HOME}/.gnupg
30noblacklist ${RUNUSER}/gnupg
31
32# This assumes you keep mail account passwords under a separate directory named mail
33# This to avoid exposing all passwords to the sandbox, only necessary ones
34noblacklist ${HOME}/.local/share/password-store
35whitelist ${HOME}/.local/share/password-store/homelab/freshrss
36
27caps.drop all 37caps.drop all
28ipc-namespace 38ipc-namespace
29netfilter 39netfilter
diff --git a/.config/fontconfig/fonts.conf b/.config/fontconfig/fonts.conf
index 7512ee5..e331f40 100644
--- a/.config/fontconfig/fonts.conf
+++ b/.config/fontconfig/fonts.conf
@@ -6,7 +6,6 @@
6 <prefer> 6 <prefer>
7 <family>Liberation Serif</family> 7 <family>Liberation Serif</family>
8 <family>DejaVu Serif</family> 8 <family>DejaVu Serif</family>
9 <family>Noto Color Emoji</family>
10 </prefer> 9 </prefer>
11 </alias> 10 </alias>
12 <alias> 11 <alias>
@@ -14,7 +13,6 @@
14 <prefer> 13 <prefer>
15 <family>Liberation Sans</family> 14 <family>Liberation Sans</family>
16 <family>DejaVu Sans</family> 15 <family>DejaVu Sans</family>
17 <family>Noto Color Emoji</family>
18 </prefer> 16 </prefer>
19 </alias> 17 </alias>
20 <alias> 18 <alias>
@@ -26,3 +24,4 @@
26 </prefer> 24 </prefer>
27 </alias> 25 </alias>
28</fontconfig> 26</fontconfig>
27
diff --git a/.config/htop/htoprc b/.config/htop/htoprc
index 4f6016b..0e89964 100644
--- a/.config/htop/htoprc
+++ b/.config/htop/htoprc
@@ -1,10 +1,10 @@
1# Beware! This file is rewritten by htop when settings are changed in the interface. 1# Beware! This file is rewritten by htop when settings are changed in the interface.
2# The parser is also very primitive, and not human-friendly. 2# The parser is also very primitive, and not human-friendly.
3fields=0 48 20 46 47 1 3fields=0 48 20 46 47 1
4sort_key=47 4sort_key=46
5sort_direction=1 5sort_direction=-1
6tree_sort_key=0 6tree_sort_key=46
7tree_sort_direction=1 7tree_sort_direction=-1
8hide_kernel_threads=1 8hide_kernel_threads=1
9hide_userland_threads=1 9hide_userland_threads=1
10shadow_other_users=0 10shadow_other_users=0
diff --git a/.config/khard/khard.conf b/.config/khard/khard.conf
new file mode 100644
index 0000000..7360d68
--- /dev/null
+++ b/.config/khard/khard.conf
@@ -0,0 +1,16 @@
1[addressbooks]
2[[contacts]]
3path = ~/.local/share/contacts/8fa0195e-936e-5bb0-7ea2-2410d65cb3da
4
5[general]
6debug = no
7default_action = list
8editor = vim
9merge_editor = vimdiff
10
11[contact table]
12display = first_name
13sort = last_name
14localize_dates = yes
15preferred_phone_number_type = pref, cell, home
16preferred_email_address_type = pref, work, home
diff --git a/.config/mutt/gruvbox b/.config/mutt/gruvbox
new file mode 100644
index 0000000..97a74a7
--- /dev/null
+++ b/.config/mutt/gruvbox
@@ -0,0 +1,87 @@
1# bg = 235 <
2# bg0 = 234
3# bg1 = 237
4# bg2 = 239
5# bg3 = 241
6# bg4 = 243
7#
8# gray = 245
9#
10# fg0 = 229
11# fg1 = 223 <
12# fg2 = 250
13# fg3 = 248
14# fg4 = 246
15#
16# red = 167
17# green = 142
18# yellow = 214
19# blue = 109
20# purple = 175
21# aqua = 108
22# orange = 208
23
24
25# See http://www.mutt.org/doc/manual/#color
26
27color attachment color109 color235
28color bold color229 color215
29color error color167 color235
30color hdrdefault color246 color235
31color indicator color223 color238
32color markers color243 color235
33color normal color223 color235
34color quoted color248 color235
35color quoted1 color108 color235
36color quoted2 color248 color235
37color quoted3 color108 color235
38color quoted4 color248 color235
39color quoted5 color108 color235
40color search color235 color208
41color signature color108 color235
42color status color235 color246
43color tilde color243 color235
44color tree color246 color235
45color underline color223 color239
46
47color sidebar_divider color246 color235
48color sidebar_new color142 color235
49color sidebar_unread color142 color235
50color sidebar_highlight color208 color235
51
52color index_number color240 color235
53color index_author color214 color235 '.*'
54color index_subject color142 color235 '.*'
55color index brightcolor223 color235 '~N'
56color index_flags brightcolor142 color235 '~N'
57color index_author brightcolor214 color235 '~N'
58color index_subject brightcolor142 color235 '~N'
59color index color240 color235 '~D'
60color index_flags color167 color235 '~D'
61color index_author color240 color235 '~D'
62color index_subject color240 color235 '~D'
63
64color header color214 color235 "^From:"
65color header color208 color235 "^(To:|Cc:)"
66color header color142 color235 "^Subject:"
67color header color108 color235 "^X-Spam-Status:"
68color header color108 color235 "^Received:"
69
70color compose header color223 color235
71color compose security_encrypt color175 color235
72color compose security_sign color109 color235
73color compose security_both color142 color235
74color compose security_none color208 color235
75
76# URL
77color body color175 color235 "[a-z]{3,256}://[-a-zA-Z0-9@:%._\\+~#=/?&,]+"
78# email
79color body color208 color235 "[-a-z_0-9.%$]+@[-a-z_0-9.]+\\.[-a-z][-a-z]+"
80# mailto link
81color body color208 color235 "mailto:[-a-z_0-9.]+@[-a-z_0-9.]+"
82# smileys
83color body color235 color214 "[;:]-[)(pPsS\|D]"
84# *bold*
85color body color229 color235 "\\*[-' A-Za-z0-9]+\\*"
86
87# vim: filetype=neomuttrc
diff --git a/.config/mutt/muttrc b/.config/mutt/muttrc
index b70ba64..2bc952a 100644
--- a/.config/mutt/muttrc
+++ b/.config/mutt/muttrc
@@ -123,27 +123,7 @@ unhdr_order *
123hdr_order Authentication-Results: From: To: Subject: Date: 123hdr_order Authentication-Results: From: To: Subject: Date:
124 124
125### Colors 125### Colors
126mono bold bold 126source /home/sam/.config/mutt/gruvbox
127mono underline underline
128mono indicator reverse
129mono error bold
130### Index
131color index white default "~A"
132color index_number blue default
133color index_author blue default "~A"
134color index_subject blue default "~A"
135# New
136color index brightyellow default "~N"
137color index_author underline brightblue default "~N"
138color index_subject underline brightblue default "~N"
139# Tagged
140color index brightwhite blue "~T"
141color index_author brightwhite blue "~T"
142color index_subject brightwhite blue "~T"
143### Header
144color hdrdefault blue default
145color header brightred default "^From:"
146color header brightred default "^Subject:"
147# highlight authentication headers based on pass/fail/none 127# highlight authentication headers based on pass/fail/none
148color header green default "dkim=pass" 128color header green default "dkim=pass"
149color header green default "spf=pass" 129color header green default "spf=pass"
@@ -154,18 +134,5 @@ color header yellow default "dmarc=none"
154color header brightred default "dkim=fail" 134color header brightred default "dkim=fail"
155color header brightred default "spf=fail" 135color header brightred default "spf=fail"
156color header brightred default "dmarc=fail" 136color header brightred default "dmarc=fail"
157### Body
158color body default default ".*"
159### Sidebar
160
161### Other
162color normal default default
163color tilde default default
164color status default black
165color signature default default
166color attachment default default
167color message default default
168color quoted green default
169color search brightred default
170 137
171source /home/sam/.config/mutt/accounts/sam 138source /home/sam/.config/mutt/accounts/sam
diff --git a/.config/newsboat/config b/.config/newsboat/config
new file mode 100644
index 0000000..174db0b
--- /dev/null
+++ b/.config/newsboat/config
@@ -0,0 +1,35 @@
1freshrss-login "sam"
2freshrss-passwordeval "pass homelab/freshrss_api"
3freshrss-url "https://rss.chudnick.com/api/greader.php"
4urls-source "freshrss"
5
6refresh-on-startup yes
7
8bind-key h quit
9bind-key j down
10bind-key k up
11bind-key l open
12bind-key j next articlelist
13bind-key k prev articlelist
14bind-key G end
15bind-key g home
16bind-key d pagedown
17bind-key u pageup
18
19bind-key n next-unread
20bind-key N prev-unread
21
22highlight all "---.*---" yellow
23highlight feedlist ".*(0/0))" black
24highlight article "(^Feed:.*|^Title:.*|^Author:.*)" cyan default bold
25highlight article "(^Link:.*|^Date:.*)" default default
26highlight article "https?://[^ ]+" green default
27highlight article "^(Title):.*$" blue default
28highlight article "\\[[0-9][0-9]*\\]" magenta default bold
29highlight article "\\[image\\ [0-9]+\\]" green default bold
30highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold
31highlight article ":.*\\(link\\)$" cyan default
32highlight article ":.*\\(image\\)$" blue default
33highlight article ":.*\\(embedded flash\\)$" magenta default
34
35
diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf
index 4723dcd..e74baf2 100644
--- a/.config/picom/picom.conf
+++ b/.config/picom/picom.conf
@@ -1,5 +1,30 @@
1opacity-rule = [ 1shadow = true;
2 "90:class_g = 'URxvt'", 2
3 "90:class_g = 'Steam'", 3vsync = true;
4 "95:class_g = 'KeePassXC'" 4
5]; 5shadow-radius = 15;
6#shadow-offset-x = -10;
7#shadow-offset-y = -10;
8shadow-opacity = 0.7;
9shadow-ignore-shaped = false;
10shadow-exclude = [ "class_g = 'dwm'",
11 "class_g = 'Firefox-esr'",
12 "class_g = 'dmenu'"];
13
14inactive-opacity = 0.9;
15active-opacity = 1.0;
16frame-opacity = 1.0;
17inactive-opacity-override = false;
18inactive-dim = 0.1;
19opacity-rule = ["100:class_g = 'dwm'",
20 "100:class_g = 'Firefox-esr'",
21 "100:class_g = 'dmenu'"];
22
23fading = true;
24fade-delta = 5;
25fade-in-step = 0.3;
26fade-out-step = 0.3;
27
28corner-radius = 10;
29rounded-corners-exclude = ["class_g = 'dwm'",
30 "class_g = 'dmenu'"]
diff --git a/.config/shell/aliasrc b/.config/shell/aliasrc
index eb39dd0..a073b76 100644
--- a/.config/shell/aliasrc
+++ b/.config/shell/aliasrc
@@ -1,5 +1,4 @@
1#!/bin/sh 1#!/bin/sh
2
3# Add color to commands 2# Add color to commands
4alias \ 3alias \
5 diff="diff --color=auto" \ 4 diff="diff --color=auto" \
@@ -14,7 +13,7 @@ alias \
14alias \ 13alias \
15 g='git' \ 14 g='git' \
16 ga='git add' \ 15 ga='git add' \
17 gc='git commit -e -m' \ 16 gc='git commit -m' \
18 gd='git diff' \ 17 gd='git diff' \
19 gl='git log' \ 18 gl='git log' \
20 gp='git push' \ 19 gp='git push' \
@@ -29,6 +28,8 @@ alias \
29 28
30# Shorten other commands 29# Shorten other commands
31alias \ 30alias \
31 ap="ansible-playbook -i inventory.yml -b --ask-vault-pass" \
32 calsync='CALCURSE_CALDAV_PASSWORD=$(pass show web/radicale.chudnick.com | head -1) calcurse-caldav' \
32 ports="ss -tuanp" \ 33 ports="ss -tuanp" \
33 py="python3" \ 34 py="python3" \
34 rb="/usr/sbin/reboot" \ 35 rb="/usr/sbin/reboot" \
@@ -36,19 +37,17 @@ alias \
36 sx="startx" \ 37 sx="startx" \
37 svm="sudo systemctl start libvirtd" \ 38 svm="sudo systemctl start libvirtd" \
38 v="vim" \ 39 v="vim" \
39 yta="youtube-dl -f bestaudio --download-archive ~/media/youtube/archive" \ 40 yta="yt-dlp -f bestaudio --remux-video ogg --download-archive ~/.local/share/yt-dlp/archive" \
40 ytv="youtube-dl -f bestvideo[height\<=1080]+bestaudio/best[height\<=1080] --download-archive ~/media/youtube/archive" \ 41 ytv="yt-dlp -f bestvideo\[height\<=1080\]+bestaudio/best\[height\<=1080\] --download-archive ~/.local/share/yt-dlp/archive" \
41 z="zathura" 42 z="zathura" \
43 revert='virsh snapshot-revert web --snapshotname $(virsh snapshot-current web --name)'
42 44
43# Start commands with specific options always 45# Start commands with specific options always
44alias \ 46alias \
45 abook="abook --config ~/.config/abook/abookrc --datafile ~/.local/share/abook/addressbook" \ 47 abook="abook --config ~/.config/abook/abookrc --datafile ~/.local/share/abook/addressbook" \
46 calcurse="calcurse -D ~/.config/calcurse" \
47 cp="cp -iv" \ 48 cp="cp -iv" \
48 ffmpeg="ffmpeg -hide_banner" \ 49 ffmpeg="ffmpeg -hide_banner" \
49 mv="mv -iv" \ 50 mv="mv -iv" \
50 mutt="firejail neomutt" 51 mutt="firejail neomutt"
51 neomutt="firejail neomutt" \ 52 neomutt="firejail neomutt" \
52 rm="rm -Iv" 53 rm="rm -Iv" \
53
54source $XDG_CONFIG_HOME/shell/private-aliasrc
diff --git a/.config/sxhkd/sxhkdrc b/.config/sxhkd/sxhkdrc
index fb46187..3e8b165 100644
--- a/.config/sxhkd/sxhkdrc
+++ b/.config/sxhkd/sxhkdrc
@@ -1,6 +1,6 @@
1# Lock screen 1# Lock screen
2super + shift + x 2super + shift + x
3 lock 3 slock
4 4
5# Take a screenshot 5# Take a screenshot
6super + Print 6super + Print
@@ -14,7 +14,7 @@ super + F1
14 14
15# Cmus Bindings 15# Cmus Bindings
16super + m 16super + m
17 urxvt -name "cmus" -e cmus; pkill -RTMIN+12 dwmblocks 17 st -name "cmus" -e cmus; pkill -RTMIN+12 dwmblocks
18super + shift + m 18super + shift + m
19 cmus-remote --raw q; pkill -RTMIN+12 dwmblocks 19 cmus-remote --raw q; pkill -RTMIN+12 dwmblocks
20super + {comma, greater, less} 20super + {comma, greater, less}
@@ -34,27 +34,25 @@ super + backslash
34 34
35# Program Bindings 35# Program Bindings
36super + q 36super + q
37 urxvt -e htop 37 st -e htop
38super + w 38super + w
39 wireshark 39 wireshark
40super + e 40super + e
41 urxvt -e firejail neomutt 41 ~/.local/bin/getmail & st -e firejail neomutt
42super + shift + e 42super + shift + e
43 ~/.local/bin/getmail 43 ~/.local/bin/getmail
44super + r 44super + r
45 urxvt -e firejail newsboat 45 st -e newsboat
46super + a 46super + a
47 urxvt -e calcurse -D ~/.config/calcurse 47 st -e calcurse
48super + s
49 firejail steam
50super + shift + s
51 kill-steam
52super + d 48super + d
53 dmenu_run 49 dmenu_run
54super + f 50super + f
55 firejail firefox 51 firejail firefox
56super + shift + f 52super + shift + f
57 firefox 53 firefox
54super + g
55 moonlight
58super + z 56super + z
59 $HOME/.local/bin/getpass 57 $HOME/.local/bin/getpass
60super + shift + z 58super + shift + z
@@ -62,11 +60,9 @@ super + shift + z
62super + x 60super + x
63 keepassxc 61 keepassxc
64super + c 62super + c
65 urxvt -e clibrary 63 firejail jellyfinmediaplayer
66super + v
67 virt-manager
68super + Return 64super + Return
69 urxvt 65 tabbed st -w
70 66
71# Function Key Bindings 67# Function Key Bindings
72 68
diff --git a/.config/x11/xinitrc b/.config/x11/xinitrc
index 49ab403..44c8e32 100644
--- a/.config/x11/xinitrc
+++ b/.config/x11/xinitrc
@@ -2,25 +2,34 @@
2xset s off 2xset s off
3# disable power saving 3# disable power saving
4xset -dpms 4xset -dpms
5# set refresh rate 5# load Xresources
6xrandr -r 144 6xrdb ~/.config/x11/xresources
7# initialize primary monitor
8xrandr --output DisplayPort-0 --primary -r 144
9# initialize secondary monitor
10xrandr --output HDMI-A-1 --auto --right-of DisplayPort-0 --mode 3840x2160
7# set background 11# set background
8bgscript 12bgscript
9# remap keys 13# remap keys
10kbremaps 14kbremaps
11# load Xresources 15# load rgb profile
12xrdb ~/.config/x11/xresources 16openrgb --profile ~/.config/OpenRGB/Gruvbox.orp &
13# start compositor 17# start compositor
14picom --config ~/.config/picom/picom.conf & 18picom --config ~/.config/picom/picom.conf &
15# start notification daemon 19# start notification daemon
16dunst & 20dunst &
21# start calendar
22calcurse --daemon &
17# start unclutter 23# start unclutter
18unclutter & 24unclutter &
19# start keybind daemon 25# start keybind daemon
20sxhkd & 26sxhkd &
21# start status bar
22dwmblocks &
23# initialize identity management programs 27# initialize identity management programs
24urxvt -e id-init & 28st -e id-init &
29# run statusbar script
30~/.local/bin/bar &
25# start window manager 31# start window manager
26dwm 32while true
33do
34 /usr/local/bin/dwm 2> /tmp/dwm_errors
35done
diff --git a/.config/x11/xresources b/.config/x11/xresources
index 33df06e..f755415 100644
--- a/.config/x11/xresources
+++ b/.config/x11/xresources
@@ -1,63 +1,26 @@
1URxvt.scrollBar: false
2*.font: xft:monospace:size=12
3
4! Brogrammer
5*.foreground: #d6dbe5
6*.background: #131313
7*.color0: #1f1f1f
8*.color1: #f81118
9*.color2: #2dc55e
10*.color3: #ecba0f
11*.color4: #2a84d2
12*.color5: #4e5ab7
13*.color6: #1081d6
14*.color7: #d6dbe5
15*.color8: #d6dbe5
16*.color9: #de352e
17*.color10: #1dd361
18*.color11: #f3bd09
19*.color12: #1081d6
20*.color13: #5350b9
21*.color14: #0f7ddb
22*.color15: #ffffff
23*.colorBD: #d6dbe5
24
25! Dracula
26!*.foreground: #F8F8F2
27!*.background: #282A36
28!*.color0: #000000
29!*.color8: #4D4D4D
30!*.color1: #FF5555
31!*.color9: #FF6E67
32!*.color2: #50FA7B
33!*.color10: #5AF78E
34!*.color3: #F1FA8C
35!*.color11: #F4F99D
36!*.color4: #BD93F9
37!*.color12: #CAA9FA
38!*.color5: #FF79C6
39!*.color13: #FF92D0
40!*.color6: #8BE9FD
41!*.color14: #9AEDFE
42!*.color7: #BFBFBF
43!*.color15: #E6E6E6
44
45! Gruvbox 1! Gruvbox
46!*.color0: #1d2021 2*.color0: #1d2021
47!*.color1: #cc241d 3*.color1: #cc241d
48!*.color2: #98971a 4*.color2: #98971a
49!*.color3: #d79921 5*.color3: #d79921
50!*.color4: #458588 6*.color4: #458588
51!*.color5: #b16286 7*.color5: #b16286
52!*.color6: #689d6a 8*.color6: #689d6a
53!*.color7: #a89984 9*.color7: #a89984
54!*.color8: #928374 10*.color8: #928374
55!*.color9: #fb4934 11*.color9: #fb4934
56!*.color10: #b8bb26 12*.color10: #b8bb26
57!*.color11: #fabd2f 13*.color11: #fabd2f
58!*.color12: #83a598 14*.color12: #83a598
59!*.color13: #d3869b 15*.color13: #d3869b
60!*.color14: #8ec07c 16*.color14: #8ec07c
61!*.color15: #ebdbb2 17*.color15: #ebdbb2
62!*.color256: #1d2021 18*.background: #282828
63!*.color257: #ebdbb2 19*.foreground: white
20*.cursorColor: white
21*.alpha: 1.0
22dmenu.background: #282828
23dmenu.foreground: #ebdbb2
24dmenu.selbackground: #ebdbb2
25dmenu.selforeground: #282828
26Xcursor.size: 16
diff --git a/.config/zsh/.zprofile b/.config/zsh/.zprofile
index 3453af6..b3a4ec6 100644
--- a/.config/zsh/.zprofile
+++ b/.config/zsh/.zprofile
@@ -12,7 +12,7 @@ export PATH=$PATH:~/.local/bin:~/.local/bin/cryptusb:~/.local/bin/private:~/.loc
12# Defaults 12# Defaults
13export BROWSER="firefox" 13export BROWSER="firefox"
14export EDITOR="vim" 14export EDITOR="vim"
15export TERMINAL="urxvt" 15export TERMINAL="st"
16 16
17# Other vars 17# Other vars
18export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' 18export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc
index 30e3f64..b18b29c 100644
--- a/.config/zsh/.zshrc
+++ b/.config/zsh/.zshrc
@@ -6,6 +6,8 @@ source ~/.config/shell/shortcutsrc
6HISTSIZE=100000000 6HISTSIZE=100000000
7SAVEHIST=100000000 7SAVEHIST=100000000
8HISTFILE="$HOME/.cache/zsh/history" 8HISTFILE="$HOME/.cache/zsh/history"
9# Show all history
10alias history="history 0"
9 11
10# Shell options 12# Shell options
11bindkey -v 13bindkey -v