X-Git-Url: https://git.shemshak.org/~bandali/configs/blobdiff_plain/ba71f50c82c6032adbff2c9ea9f8503424a112c5..bb60074bc1784847f77321e96e13b8c0bab6df56:/rc.org diff --git a/rc.org b/rc.org index e1fc9fe..f4dcf38 100644 --- a/rc.org +++ b/rc.org @@ -429,6 +429,11 @@ use_apop = True type = Maildir path = ~/mail/gnu/Inbox/ +# [destination] +# type = MDA_external +# path = /usr/lib/dovecot/deliver +# arguments = ('-d', 'amin@aminb.org') + [options] delete = True #+end_src @@ -704,7 +709,7 @@ general { # order += "ipv6" order += "disk /" order += "disk /data" -order += "wireless _first_" +# order += "wireless _first_" order += "ethernet _first_" order += "battery 0" order += "volume master" @@ -817,6 +822,31 @@ Channel uwaterloo Master :uwaterloo-remote: Slave :uwaterloo-local: Patterns * + +###### +IMAPAccount csclub +Host mail.csclub.uwaterloo.ca +User abandali +PassCmd "gpg -q --for-your-eyes-only --no-tty -d ~/.passwd/csclub.gpg" +SSLType IMAPS + +IMAPStore csclub-remote +Account csclub + +IMAPAccount csclub-dovecot +Host 127.0.0.1 +Port 143 +User abandali@csclub.uw +PassCmd "gpg -q --for-your-eyes-only --no-tty -d ~/.passwd/csclub-dovecot.gpg" +SSLType None + +IMAPStore csclub-local +Account csclub-dovecot + +Channel csclub +Master :csclub-remote: +Slave :csclub-local: +Patterns * #+end_src *** mbsync.service @@ -889,6 +919,77 @@ Section "InputClass" EndSection #+end_src +** mkinitcpio + +#+begin_src conf :tangle /sudo::/etc/mkinitcpio.conf :comments none +# vim:set ft=sh +# MODULES +# The following modules are loaded before any boot hooks are +# run. Advanced users may wish to specify all system modules +# in this array. For instance: +# MODULES=(piix ide_disk reiserfs) +MODULES=(i915) + +# BINARIES +# This setting includes any additional binaries a given user may +# wish into the CPIO image. This is run last, so it may be used to +# override the actual binaries included by a given hook +# BINARIES are dependency parsed, so you may safely ignore libraries +BINARIES=() + +# FILES +# This setting is similar to BINARIES above, however, files are added +# as-is and are not parsed in any way. This is useful for config files. +FILES=() + +# HOOKS +# This is the most important setting in this file. The HOOKS control the +# modules and scripts added to the image, and what happens at boot time. +# Order is important, and it is recommended that you do not change the +# order in which HOOKS are added. Run 'mkinitcpio -H ' for +# help on a given hook. +# 'base' is _required_ unless you know precisely what you are doing. +# 'udev' is _required_ in order to automatically load modules +# 'filesystems' is _required_ unless you specify your fs modules in MODULES +# Examples: +## This setup specifies all modules in the MODULES setting above. +## No raid, lvm2, or encrypted root is needed. +# HOOKS=(base) +# +## This setup will autodetect all modules for your system and should +## work as a sane default +# HOOKS=(base udev autodetect block filesystems) +# +## This setup will generate a 'full' image which supports most systems. +## No autodetection is done. +# HOOKS=(base udev block filesystems) +# +## This setup assembles a pata mdadm array with an encrypted root FS. +## Note: See 'mkinitcpio -H mdadm' for more information on raid devices. +# HOOKS=(base udev block mdadm encrypt filesystems) +# +## This setup loads an lvm2 volume group on a usb device. +# HOOKS=(base udev block lvm2 filesystems) +# +## NOTE: If you have /usr on a separate partition, you MUST include the +# usr, fsck and shutdown hooks. +HOOKS=(base udev autodetect modconf block keyboard encrypt lvm2 resume filesystems fsck) + +# COMPRESSION +# Use this to compress the initramfs image. By default, gzip compression +# is used. Use 'cat' to create an uncompressed image. +#COMPRESSION="gzip" +#COMPRESSION="bzip2" +#COMPRESSION="lzma" +#COMPRESSION="xz" +#COMPRESSION="lzop" +#COMPRESSION="lz4" + +# COMPRESSION_OPTIONS +# Additional options for the compressor +#COMPRESSION_OPTIONS=() +#+end_src + ** mpd :PROPERTIES: :header-args+: :tangle ~/.config/mpd/mpd.conf @@ -1335,7 +1436,7 @@ from amin@bandali.me account gnu host fencepost.gnu.org # use `msmtp -a gnu --serverinfo --tls --tls-certcheck=off --tls-fingerprint=` to get the current fingerprint -tls_fingerprint 93:59:52:1D:A6:95:13:31:7C:81:ED:DB:A5:BA:B5:2B:C8:BC:38:3E:71:A5:DF:8C:80:46:C1:E0:5D:2D:F4:E3 +tls_fingerprint FB:DB:E3:7D:96:22:22:20:9F:4A:FD:70:96:99:50:5C:39:B2:29:D9:47:47:52:A8:5A:4A:DF:70:9D:21:DE:C4 tls_starttls on from bandali@gnu.org user bandali @@ -1358,6 +1459,15 @@ user abandali passwordeval gpg2 --no-tty -q -d ~/.passwd/uwaterloo.gpg tls_trust_file /etc/ssl/certs/ca-certificates.crt +# csclub +account csclub +host mail.csclub.uwaterloo.ca +tls_starttls on +from abandali@csclub.uwaterloo.ca +user abandali +passwordeval gpg2 --no-tty -q -d ~/.passwd/csclub.gpg +tls_trust_file /etc/ssl/certs/ca-certificates.crt + # Set a default account account default : aminb #+end_src @@ -2162,6 +2272,226 @@ Unit=notmuch.service WantedBy=timers.target #+end_src +** pacman + +*** conf + +#+begin_src conf :tangle /sudo::/etc/pacman.conf :comments none +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -L -C - -f -o %o %u +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +Color +TotalDownload +CheckSpace +VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all Arch/Parabola packagers +# with `pacman-key --populate archlinux` and `pacman-key --populate parabola`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +# NOTE: Nonprism is a particular repository that aims to provide software built +# and patched without services under global data surveillance programs like PRISM, +# XKeyscore and Tempora. For more info see: https://wiki.parabola.nu/Nonprism + +#[nonprism-testing] +#Include = /etc/pacman.d/mirrorlist + +#[nonprism] +#Include = /etc/pacman.d/mirrorlist + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +# The PCR (Parabola Community Repository) contains packages maintained by trusted +# members of the Parabola community. It also contains packages maintained by +# Parabola developers, but that the developer decided didn't belong in core/libre. + +#[pcr-testing] +#Include = /etc/pacman.d/mirrorlist + +[pcr] +Include = /etc/pacman.d/mirrorlist + +# If you want to run 32 bit applications on your x86_64 system, +# enable the libre-multilib, multilib and pcr-multilib repositories as required here. + +#[nonprism-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[nonprism-multilib] +#Include = /etc/pacman.d/mirrorlist + +#[libre-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[libre-multilib] +#Include = /etc/pacman.d/mirrorlist + +#[multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[multilib] +#Include = /etc/pacman.d/mirrorlist + +#[pcr-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[pcr-multilib] +#Include = /etc/pacman.d/mirrorlist + +# Parabola also supports another community projects and personal repositories, to +# find them check out this wiki page: https://wiki.parabola.nu/Repositories + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs + +Include = /etc/pacman.d/*.conf +#+end_src + +*** mirrorlist + +#+begin_src conf :tangle /sudo::/etc/pacman.d/mirrorlist :comments none +# Parabola GNU/Linux-libre - Last Updated: Wed Dec 20 02:59:35 GMT 2017 + +Server = http://mirror.fsf.org/parabola/$repo/os/$arch +Server = http://mirror.fsf.org/parabola/$repo/os/$arch +Server = http://mirror.fsf.org/parabola/$repo/os/$arch +Server = http://mirror.fsf.org/parabola/$repo/os/$arch + +# Location: London, UK +# Responsible: Parabola Project +# Note: Not really a mirror, automatically redirects you to an Arch +# mirror when possible. Works best specifying it a few times in a +# row (404s workaround). +# Server = http://redirector.parabola.nu/$repo/os/$arch +Server = https://redirector.parabola.nu/$repo/os/$arch + +# Location: Reykjavík, Iceland +# Responsible: Parabola Project +# Note: Not really a mirror, automatically redirects you to a Parabola +# mirror that has the file you are looking for. +# Server = http://repomirror.parabola.nu/$repo/os/$arch +Server = https://repomirror.parabola.nu/$repo/os/$arch + +# Location: Falkenstein, Germany +# Server = http://mirror.grapentin.org/parabola/$repo/os/$arch +Server = https://mirror.grapentin.org/parabola/$repo/os/$arch + +# Location: Volendam, Netherlands +Server = https://jeweet.net/repo/parabola/$repo/os/$arch + +# Location: Amsterdam, Netherlands +# Note: Not really a mirror, but a high-speed 10GiB cache for +# mirror.yandex.ru/mirrors/parabola +# Server = http://parabola.isacdaavid.info:8080/$repo/os/$arch +Server = https://parabola.isacdaavid.info:8081/$repo/os/$arch + +# Location: Moscow, Russian Federation +# Server = http://mirror.yandex.ru/mirrors/parabola/$repo/os/$arch +Server = https://mirror.yandex.ru/mirrors/parabola/$repo/os/$arch + +# Location: Ho Chi Minh City, Vietnam +# Server = http://mirror.freedif.org/Parabola/$repo/os/$arch +Server = https://mirror.freedif.org/Parabola/$repo/os/$arch + +# Location: Los Angeles, CA, USA +# Note: Also visit http://alfplayer.com/ for its SNAPSHOTS ARCHIVE +Server = http://alfplayer.com/parabola/$repo/os/$arch + +# Location: Boston, MA, USA +Server = http://mirror.fsf.org/parabola/$repo/os/$arch + +# Location: Austin, TX, USA +# Server = http://parabola.serverpit.com/ +Server = https://parabola.serverpit.com/ + +# Location: Reykjavík, Iceland +# Responsible: Parabola Project +# Note: Currently pointing to repomirror.parabola.nu +# Server = http://repo.parabola.nu/$repo/os/$arch +Server = https://repo.parabola.nu/$repo/os/$arch +#+end_src + ** pigeonhole *** amin.sieve :PROPERTIES: @@ -2694,6 +3024,15 @@ mode screenshot { bindsym q mode default } +# +# Window configurations +# +for_window [class="mpv"] floating enable +for_window [class="TelegramDesktop"] floating enable +for_window [app_id="pavucontrol"] floating enable +for_window [app_id="meld"] floating enable +for_window [app_id="nm-connection-editor"] floating enable + # # Status Bar: # @@ -2780,6 +3119,14 @@ input "1:1:AT_Translated_Set_2_keyboard" { image=/home/amin/usr/pics/wp/wp2445784-blurred-wallpapers.jpg scaling=fill #+end_src +** systemd + +Keep boot messages on tty1 (see [[https://wiki.archlinux.org/index.php/getty#Have_boot_messages_stay_on_tty1][here]]) + +#+begin_src conf :tangle /sudo::/etc/systemd/system/getty@tty1.service.d/noclear.conf +[Service] +TTYVTDisallocate=no +#+end_src ** TLP @@ -3027,12 +3374,11 @@ USB_BLACKLIST_WWAN=1 # Hint: the parameters DEVICES_TO_DISABLE/ENABLE_ON_STARTUP/SHUTDOWN below # are ignored when this is enabled! #RESTORE_DEVICE_STATE_ON_STARTUP=0 -RESTORE_DEVICE_STATE_ON_STARTUP=0 +RESTORE_DEVICE_STATE_ON_STARTUP=1 # Radio devices to disable on startup: bluetooth, wifi, wwan. # Separate multiple devices with spaces. #DEVICES_TO_DISABLE_ON_STARTUP="bluetooth wifi wwan" -DEVICES_TO_DISABLE_ON_STARTUP="bluetooth" # Radio devices to enable on startup: bluetooth, wifi, wwan. # Separate multiple devices with spaces. @@ -3051,6 +3397,7 @@ DEVICES_TO_DISABLE_ON_STARTUP="bluetooth" # Radio devices to disable on battery: bluetooth, wifi, wwan. #DEVICES_TO_DISABLE_ON_BAT="bluetooth wifi wwan" +DEVICES_TO_DISABLE_ON_BAT="bluetooth" # Radio devices to disable on battery when not in use (not connected): # bluetooth, wifi, wwan. @@ -3836,8 +4183,6 @@ installed. :END: #+begin_src sh - - ################# # CORE SETTINGS # ################# @@ -3914,7 +4259,6 @@ ztermtitle='%n@%m:%~' #zhighlighters=(main brackets cursor) zhighlighters=(main brackets pattern) - # # SSH # @@ -3922,7 +4266,6 @@ zhighlighters=(main brackets pattern) # Load these ssh identities with the ssh module zssh_ids=(id_ed25519_bandali) - # # Pacman # @@ -3932,6 +4275,8 @@ zpacman_frontend='yay' # Load any helper scripts as defined here #zpacman_helper=(aur) + + #+end_src *** zlogin @@ -3940,14 +4285,13 @@ zpacman_frontend='yay' :END: #+begin_src sh - - # # User configuration sourced by login shells # # Initialize zim [[ -s ${ZIM_HOME}/login_init.zsh ]] && source ${ZIM_HOME}/login_init.zsh + #+end_src *** zprofile @@ -4029,7 +4373,7 @@ TRAPUSR1() { rehash}; precmd() { [[ $history[$[ HISTCMD -1 ]] == *(pacaur|pacman # User configuration sourced by interactive shells # -# Change default zim location +# Define zim location export ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim # Start zim @@ -4070,7 +4414,7 @@ alias mv="mv -iv" alias cp="cp -iv" alias scl=systemctl alias jcl=journalctl -alias m="mbsync uwaterloo; mbsync amin" +alias m="mbsync csclub; mbsync uwaterloo; mbsync amin" alias best="youtube-dl -f best" alias sd="ssh deb" alias sf="ssh fp" @@ -4085,6 +4429,7 @@ aur() { # i-beam cursor echo -e "\033[5 q" #echo -e "\033[6 q" + #+end_src * Scripts