[rc/pacman] add configuration and mirrorlist
[~bandali/configs] / rc.org
diff --git a/rc.org b/rc.org
index 691480a..1a86339 100644 (file)
--- 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"
@@ -889,6 +894,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 <hook name>' 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
@@ -1322,7 +1398,7 @@ logfile ~/.msmtp.log
 account aminb
 host mail.aminb.org
 # use `msmtp -a aminb --serverinfo --tls --tls-certcheck=off --tls-fingerprint=` to get the current fingerprint
-tls_fingerprint C7:A4:2E:A3:11:FA:80:45:C4:29:D6:62:4D:73:DB:34:43:67:8F:16:F1:2E:54:43:06:1B:41:B6:A9:09:E0:37
+tls_fingerprint DE:5F:73:0C:F7:9A:7B:1D:55:AA:49:28:E7:28:49:24:A4:08:55:00:7A:7E:D8:7F:30:06:26:24:11:29:61:07
 tls_starttls on
 from amin@aminb.org
 user amin@aminb.org
@@ -1335,7 +1411,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
@@ -2162,6 +2238,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:
@@ -2592,6 +2888,9 @@ exec swayidle \
     # Make the current focus fullscreen
     bindsym $mod+f fullscreen
 
+    # Toggle sticky-ness of the current (floating) window
+    bindsym $mod+$mod2+space sticky toggle
+
     # Toggle the current focus between tiling and floating mode
     bindsym $mod+Shift+space floating toggle
 
@@ -2691,6 +2990,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:
 #
@@ -2777,6 +3085,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
 
@@ -3649,9 +3965,9 @@ Emacs.font: Source Code Pro:size=14
 #+begin_src conf-xdefaults
 ! Font
 URxvt.font:             xft:source code pro:pixelsize=14:antialias=true:hinting=true, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true
-URxvt.boldFont:         xft:source code pro semibold:pixelsize=14:antialias=true:hinting=true:bold, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true:bold
-URxvt.italicFont:       xft:source code pro italic:pixelsize=14:antialias=true:hinting=true:italic, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true:italic
-URxvt.bolditalicFont:   xft:source code pro semibold italic:pixelsize=14:antialias=true:hinting=true:bold:italic, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true:bolditalic
+URxvt.boldFont:         xft:source code pro:semibold:pixelsize=14:antialias=true:hinting=true:bold, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true:bold
+URxvt.italicFont:       xft:source code pro:italic:pixelsize=14:antialias=true:hinting=true:italic, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true:italic
+URxvt.bolditalicFont:   xft:source code pro:semibold:italic:pixelsize=14:antialias=true:hinting=true:bold:italic, xft:dejavu sans mono:pixelsize=15:antialias=true:hinting=true:bolditalic
 
 URxvt.xftAntialias:     true
 URxvt.letterSpace:      0
@@ -3833,8 +4149,6 @@ installed.
 :END:
 
 #+begin_src sh
-
-
 #################
 # CORE SETTINGS #
 #################
@@ -3911,7 +4225,6 @@ ztermtitle='%n@%m:%~'
 #zhighlighters=(main brackets cursor)
 zhighlighters=(main brackets pattern)
 
-
 #
 # SSH
 #
@@ -3919,7 +4232,6 @@ zhighlighters=(main brackets pattern)
 # Load these ssh identities with the ssh module
 zssh_ids=(id_ed25519_bandali)
 
-
 #
 # Pacman
 #
@@ -3929,6 +4241,8 @@ zpacman_frontend='yay'
 
 # Load any helper scripts as defined here
 #zpacman_helper=(aur)
+
+
 #+end_src
 
 *** zlogin
@@ -3937,14 +4251,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
@@ -4026,7 +4339,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
@@ -4082,6 +4395,7 @@ aur() {
 # i-beam cursor
 echo -e "\033[5 q"
 #echo -e "\033[6 q"
+
 #+end_src
 
 * Scripts