diff options
39 files changed, 524 insertions, 191 deletions
diff --git a/etc/NetworkManager/dispatcher.d/70-wifi-wired-exclusive b/etc/NetworkManager/dispatcher.d/70-wifi-wired-exclusive deleted file mode 100755 index fa8d28ed..00000000 --- a/etc/NetworkManager/dispatcher.d/70-wifi-wired-exclusive +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -# https://wiki.archlinux.org/title/NetworkManager#Use_dispatcher_to_automatically_toggle_wireless_depending_on_LAN_cable_being_plugged_in - -if [ "$1" = "enu1u2c2" ]; then - case "$2" in - up) - nmcli radio wifi off - ;; - down) - nmcli radio wifi on - ;; - esac -elif [ "$(nmcli -g GENERAL.STATE device show enu1u2c2)" = "20 (unavailable)" ]; then - nmcli radio wifi on -fi diff --git a/etc/NetworkManager/system-connections/wired_internet.nmconnection b/etc/NetworkManager/system-connections/wired_internet.nmconnection new file mode 100644 index 00000000..cc16b1b1 --- /dev/null +++ b/etc/NetworkManager/system-connections/wired_internet.nmconnection @@ -0,0 +1,16 @@ +[connection] +id=wired_internet +uuid=14f15798-8e3a-4d32-a189-1bd5a55bb926 +type=ethernet +autoconnect-priority=1 + +[ethernet] + +[ipv4] +method=auto + +[ipv6] +addr-gen-mode=stable-privacy +method=auto + +[proxy] diff --git a/etc/NetworkManager/system-connections/wired_two_computer.nmconnection b/etc/NetworkManager/system-connections/wired_two_computer.nmconnection new file mode 100644 index 00000000..0f5d5f6e --- /dev/null +++ b/etc/NetworkManager/system-connections/wired_two_computer.nmconnection @@ -0,0 +1,19 @@ +[connection] +id=wired_two_computer +uuid=d802bd70-8e5a-4dbc-b0ee-7857d765180c +type=ethernet +autoconnect-priority=2 + +[ethernet] + +[ipv4] +address1=10.0.3.2/32 +method=manual +route1=10.0.3.1/32 + +[ipv6] +address1=fdc9:281f:4d7:9eec::2/64 +method=manual +route1=fdc9:281f:4d7:9eec::1/128 + +[proxy] diff --git a/etc/conf.d/distccd-armv8 b/etc/conf.d/distccd-armv8 new file mode 100644 index 00000000..298e69b0 --- /dev/null +++ b/etc/conf.d/distccd-armv8 @@ -0,0 +1,8 @@ +# +# Parameters to be passed to distccd +# +# You must explicitly add IPs (or subnets) that are allowed to connect, +# using the --allow switch. See the distccd manpage for more info. +# + +DISTCC_ARGS="--allow 10.0.0.1/32 --log-level info --log-file /tmp/distccd-armv8.log --port 49710" diff --git a/etc/gai.conf b/etc/gai.conf deleted file mode 100644 index ac96e422..00000000 --- a/etc/gai.conf +++ /dev/null @@ -1,65 +0,0 @@ -# Configuration for getaddrinfo(3). -# -# So far only configuration for the destination address sorting is needed. -# RFC 3484 governs the sorting. But the RFC also says that system -# administrators should be able to overwrite the defaults. This can be -# achieved here. -# -# All lines have an initial identifier specifying the option followed by -# up to two values. Information specified in this file replaces the -# default information. Complete absence of data of one kind causes the -# appropriate default information to be used. The supported commands include: -# -# reload <yes|no> -# If set to yes, each getaddrinfo(3) call will check whether this file -# changed and if necessary reload. This option should not really be -# used. There are possible runtime problems. The default is no. -# -# label <mask> <value> -# Add another rule to the RFC 3484 label table. See section 2.1 in -# RFC 3484. The default is: -# -#label ::1/128 0 -#label ::/0 1 -#label 2002::/16 2 -#label ::/96 3 -#label ::ffff:0:0/96 4 -#label fec0::/10 5 -#label fc00::/7 6 -#label 2001:0::/32 7 -# -# This default differs from the tables given in RFC 3484 by handling -# (now obsolete) site-local IPv6 addresses and Unique Local Addresses. -# The reason for this difference is that these addresses are never -# NATed while IPv4 site-local addresses most probably are. Given -# the precedence of IPv6 over IPv4 (see below) on machines having only -# site-local IPv4 and IPv6 addresses a lookup for a global address would -# see the IPv6 be preferred. The result is a long delay because the -# site-local IPv6 addresses cannot be used while the IPv4 address is -# (at least for the foreseeable future) NATed. We also treat Teredo -# tunnels special. -# -# precedence <mask> <value> -# Add another rule to the RFC 3484 precedence table. See section 2.1 -# and 10.3 in RFC 3484. The default is: -# -#precedence ::1/128 50 -#precedence ::/0 40 -#precedence 2002::/16 30 -#precedence ::/96 20 -#precedence ::ffff:0:0/96 10 -# -# For sites which prefer IPv4 connections change the last line to -# -precedence ::ffff:0:0/96 100 - -# -# scopev4 <mask> <value> -# Add another rule to the RFC 6724 scope table for IPv4 addresses. -# By default the scope IDs described in section 3.2 in RFC 6724 are -# used. Changing these defaults should hardly ever be necessary. -# The defaults are equivalent to: -# -#scopev4 ::ffff:169.254.0.0/112 2 -#scopev4 ::ffff:127.0.0.0/104 2 -#scopev4 ::ffff:0.0.0.0/96 14 diff --git a/etc/localtime b/etc/localtime index 099d0edb..8abc2b0e 120000 --- a/etc/localtime +++ b/etc/localtime @@ -1 +1 @@ -/usr/share/zoneinfo/America/Los_Angeles
\ No newline at end of file +../usr/share/zoneinfo/Asia/Shanghai
\ No newline at end of file diff --git a/etc/makepkg.conf b/etc/makepkg.conf index 112058ce..541847f0 100644 --- a/etc/makepkg.conf +++ b/etc/makepkg.conf @@ -42,7 +42,11 @@ CHOST="aarch64-unknown-linux-gnu" # -march (or -mcpu) builds exclusively for an architecture # -mtune optimizes for an architecture, but builds for whole processor family CPPFLAGS="" -CFLAGS="-march=native -O2 -pipe -fstack-protector-strong -fno-plt -fexceptions \ +# https://wiki.archlinux.org/title/Distcc#For_use_with_makepkg suggest "The +# -march=native flag cannot be used in the CFLAGS and CXXFLAGS variables, +# otherwise distccd will not distribute work to other machines." I want to use +# distcc to let xyzinsp help compile, so I do not use -march=native on pp +CFLAGS="-march=armv8-a -O2 -pipe -fstack-protector-strong -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \ -fstack-clash-protection \ -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" @@ -69,11 +73,16 @@ DEBUG_CXXFLAGS="$DEBUG_CFLAGS" #-- check: Run the check() function if present in the PKGBUILD #-- sign: Generate PGP signature file # -BUILDENV=(!distcc color !ccache check !sign) +BUILDENV=(distcc color !ccache check !sign) # #-- If using DistCC, your MAKEFLAGS will also need modification. In addition, #-- specify a space-delimited list of hosts running in the DistCC cluster. -#DISTCC_HOSTS="" +# I choose to use default --jobs on insp distccd-armv8, it is max insp threads +# 4 + 2 = 6, I choose to use that here also. +# https://wiki.archlinux.org/title/Distcc#For_use_with_makepkg suggest this +# number to be insp's max number of threads, but I would like to use a higher +# number to encourage pp distcc to use insp +DISTCC_HOSTS="10.0.0.1:49710/6" # #-- Specify a directory for package building. #BUILDDIR=/tmp/makepkg diff --git a/etc/mimic/enu1u2c2.conf b/etc/mimic/enu1u2c2.conf new file mode 120000 index 00000000..74ec9c19 --- /dev/null +++ b/etc/mimic/enu1u2c2.conf @@ -0,0 +1 @@ +wlan0.conf
\ No newline at end of file diff --git a/etc/mimic/wlan0.conf b/etc/mimic/wlan0.conf new file mode 100644 index 00000000..68160109 --- /dev/null +++ b/etc/mimic/wlan0.conf @@ -0,0 +1,42 @@ +# This is an example configuration for Mimic. For each interface, you may +# create <interface>.conf in /etc/mimic and in the following format to +# pass arguments to Mimic's systemd service (mimic@<interface>.service). +# +# Each configuration should be in the format of `key=value`. There might be +# whitespaces between key, '=' and value, and should be kept in one line. Empty +# lines and ones that start with '#' are ignored. + +# Sets log verbosity. Log level equal to or higher (in number) than log +# verbosity will be discarded. Both number and string matching log levels are +# accepted. Number must be greater than or equal to 0. Defaults to info (2). +# +# Log levels: +# 0 - error (cannot be discarded) +# 1 - warn +# 2 - info +# 3 - debug +# 4 - trace +#log.verbosity = trace + +# Specify link layer type, can be 'eth' (Ethernet) or 'none' (no L2 header, +# like PPP or TUN). Defaults to 'eth'. +#link_type = eth + +# Force XDP attach mode, either 'skb' or 'native'. Defaults to 'native' if +# target interface supports it, or 'skb'. +#xdp_mode = skb + +# Use libxdp instead of libbpf to load XDP program. libxdp supports chaining +# multiple XDP programs on one interface. Mimic loads libxdp dynamically using +# dlopen. Defaults to false. +#use_libxdp = false + +# Whether to always use maximum window size in TCP packets. Defaults to false. +#max_window = false + +# Specifies which packets should be processed by Mimic. Can be set more +# than once to allow parallel rules (OR'ed). +# +# Filter format follows `(local|remote)=IP:port`. For IPv6, IP addresses +# need to be surrounded by square brackets. See below for examples. +filter = remote=104.224.159.210:54635 diff --git a/etc/mimic/wwu1i4.conf b/etc/mimic/wwu1i4.conf new file mode 120000 index 00000000..74ec9c19 --- /dev/null +++ b/etc/mimic/wwu1i4.conf @@ -0,0 +1 @@ +wlan0.conf
\ No newline at end of file diff --git a/etc/mkinitcpio.conf b/etc/mkinitcpio.conf index 6e7b85b1..1dd9ace0 100644 --- a/etc/mkinitcpio.conf +++ b/etc/mkinitcpio.conf @@ -34,21 +34,21 @@ FILES=() # ## This setup will autodetect all modules for your system and should ## work as a sane default -# HOOKS=(base udev autodetect modconf block filesystems fsck) +# HOOKS=(base udev autodetect microcode modconf block filesystems fsck) # ## This setup will generate a 'full' image which supports most systems. ## No autodetection is done. -# HOOKS=(base udev modconf block filesystems fsck) +# HOOKS=(base udev microcode modconf block filesystems fsck) # ## This setup assembles a mdadm array with an encrypted root file system. ## Note: See 'mkinitcpio -H mdadm_udev' for more information on RAID devices. -# HOOKS=(base udev modconf keyboard keymap consolefont block mdadm_udev encrypt filesystems fsck) +# HOOKS=(base udev microcode modconf keyboard keymap consolefont block mdadm_udev encrypt filesystems fsck) # ## This setup loads an lvm2 volume group. -# HOOKS=(base udev modconf block lvm2 filesystems fsck) +# HOOKS=(base udev microcode modconf block lvm2 filesystems fsck) # ## This will create a systemd based initramfs which loads an encrypted root filesystem. -# HOOKS=(base systemd autodetect modconf kms keyboard sd-vconsole sd-encrypt block filesystems fsck) +# HOOKS=(base systemd autodetect microcode modconf kms keyboard sd-vconsole sd-encrypt block filesystems fsck) # ## NOTE: If you have /usr on a separate partition, you MUST include the # usr and fsck hooks. diff --git a/etc/myconf/cfgl_meta b/etc/myconf/cfgl_meta index 1a046469..d08682e4 100644 --- a/etc/myconf/cfgl_meta +++ b/etc/myconf/cfgl_meta @@ -7,9 +7,10 @@ 700 root root //etc/.cfgl/info 600 root root //etc/.cfgl/info/sparse-checkout 644 root root //etc/chrony.conf +755 root root //etc/conf.d +644 root root //etc/conf.d/distccd-armv8 600 root root //etc/crypttab 644 root root //etc/fstab -644 root root //etc/gai.conf 644 root root //etc/hostname 644 root root //etc/locale.conf 644 root root //etc/locale.gen @@ -17,33 +18,38 @@ 644 root root //etc/makepkg.conf 755 root root //etc/makepkg.conf.d 644 root root //etc/makepkg.conf.d/rust.conf +755 root root //etc/mimic +777 root root //etc/mimic/enu1u2c2.conf +644 root root //etc/mimic/wlan0.conf +777 root root //etc/mimic/wwu1i4.conf 644 root root //etc/mkinitcpio.conf 755 root root //etc/myconf 600 root root //etc/myconf/cfgl_meta 755 root root //etc/NetworkManager -755 root root //etc/NetworkManager/dispatcher.d -755 root root //etc/NetworkManager/dispatcher.d/70-wifi-wired-exclusive +700 root root //etc/NetworkManager/system-connections +600 root root //etc/NetworkManager/system-connections/wired_internet.nmconnection +600 root root //etc/NetworkManager/system-connections/wired_two_computer.nmconnection 644 root root //etc/nftables.conf 644 root root //etc/pacman.conf 755 root root //etc/pacman.d 755 root root //etc/pacman.d/gnupg 644 root root //etc/pacman.d/gnupg/gpg.conf -755 root root //etc/pacman.d/hooks -644 root root //etc/pacman.d/hooks/linux-megi-mkinitcpio.hook 644 root root //etc/pacman.d/mirrorlist 777 root root //etc/resolv.conf 644 root root //etc/services 755 root root //etc/ssh -755 root root //etc/ssh/ssh_config.d -644 root root //etc/ssh/ssh_config.d/my_ssh_config.conf 644 root root //etc/ssh/sshd_config 440 root root //etc/sudoers 755 root root //etc/systemd 755 root root //etc/systemd/system +755 root root //etc/systemd/system/multi-user.target.wants +777 root root //etc/systemd/system/multi-user.target.wants/mimic@wlan0.service 755 root root //etc/systemd/system/paccache.service.d 644 root root //etc/systemd/system/paccache.service.d/10-remove-all.conf 755 root root //home 700 xyz wheel //home/xyz +700 xyz wheel //home/xyz/.abook +644 xyz wheel //home/xyz/.abook/abookrc 644 xyz wheel //home/xyz/.bashrc 755 xyz wheel //home/xyz/.config 755 xyz wheel //home/xyz/.config/alacritty @@ -69,14 +75,16 @@ 600 xyz wheel //home/xyz/.config/mimeapps.list 700 xyz wheel //home/xyz/.config/mpv 644 xyz wheel //home/xyz/.config/mpv/mpv.conf -755 xyz wheel //home/xyz/.config/mpv/scripts -777 xyz wheel //home/xyz/.config/mpv/scripts/sponsorblock-minimal.lua 755 xyz wheel //home/xyz/.config/myconf 644 xyz wheel //home/xyz/.config/myconf/pacman_Qqme 644 xyz wheel //home/xyz/.config/myconf/pacman_Qqne 644 xyz wheel //home/xyz/.config/myconf/sye 644 xyz wheel //home/xyz/.config/myconf/syue 644 xyz wheel //home/xyz/.config/myconf/upd_rsync_files +755 xyz wheel //home/xyz/.config/neomutt +644 xyz wheel //home/xyz/.config/neomutt/mail +644 xyz wheel //home/xyz/.config/neomutt/mail2 +644 xyz wheel //home/xyz/.config/neomutt/neomuttrc 755 xyz wheel //home/xyz/.config/nvim 644 xyz wheel //home/xyz/.config/nvim/init.vim 755 xyz wheel //home/xyz/.config/phosh @@ -98,6 +106,7 @@ 755 xyz wheel //home/xyz/.local 755 xyz wheel //home/xyz/.local/bin 755 xyz wheel //home/xyz/.local/bin/alacritty +755 xyz wheel //home/xyz/.local/bin/neomutt 755 xyz wheel //home/xyz/.local/bin/xdg-terminal-exec 755 xyz wheel //home/xyz/.local/share 700 xyz wheel //home/xyz/.local/share/applications @@ -106,6 +115,7 @@ 700 xyz wheel //home/xyz/.local/share/fcitx5 700 xyz wheel //home/xyz/.local/share/fcitx5/punctuation 600 xyz wheel //home/xyz/.local/share/fcitx5/punctuation/punc.mb.zh_CN +644 xyz wheel //home/xyz/.mbsyncrc 700 xyz wheel //home/xyz/.mozilla 700 xyz wheel //home/xyz/.mozilla/firefox 755 xyz wheel //home/xyz/.mozilla/firefox/xxxxxxxx.fly diff --git a/etc/nftables.conf b/etc/nftables.conf index ff49a1eb..e70f2073 100644 --- a/etc/nftables.conf +++ b/etc/nftables.conf @@ -22,8 +22,9 @@ table inet my_table { tcp dport ssh accept tcp dport qrcp accept - #udp dport mdns accept - #tcp dport iperf3 accept + udp dport mdns accept + tcp dport iperf3 accept + udp dport wireguard accept pkttype host limit rate 5/second counter reject with icmpx type admin-prohibited counter comment "count any other traffic" diff --git a/etc/pacman.conf b/etc/pacman.conf index 1ff36947..4c32e0ad 100644 --- a/etc/pacman.conf +++ b/etc/pacman.conf @@ -44,6 +44,8 @@ SigLevel = Required DatabaseOptional LocalFileSigLevel = Optional #RemoteFileSigLevel = Required +DisableDownloadTimeout + # NOTE: You must run `pacman-key --init` before first using pacman; the local # keyring can then be populated with the keys of all official Arch Linux ARM # packagers with `pacman-key --populate archlinuxarm`. diff --git a/etc/pacman.d/hooks/linux-megi-mkinitcpio.hook b/etc/pacman.d/hooks/linux-megi-mkinitcpio.hook deleted file mode 100644 index 24d44ab7..00000000 --- a/etc/pacman.d/hooks/linux-megi-mkinitcpio.hook +++ /dev/null @@ -1,16 +0,0 @@ -# Sometimes after linux-megi upgrade, reboot results into osk-sdl errors so I can't decrypt FDE. -# Maybe it is because linux-megi does not have `/usr/lib/modules/*/vmlinuz`, this cause /usr/share/libalpm/hooks/90-mkinitcpio-install.hook to not run when linux-megi upgrade, which cause mkinitcpio not run. -# Also, 90-linux-megi.hook does not set linux-megi as target and it seems cause it not running when linux-megi upgrade. -# I'm not sure what's the cause of the issue. This pacman hook is just a dirty workaround, because it may cause mkinitcpio run twice. -[Trigger] -Type = Package -Operation = Install -Operation = Upgrade -Target = linux-megi - -[Action] -Description = My workaround to mkinitcpio after linux-megi upgrade... -When = PostTransaction -Exec = /usr/bin/mkinitcpio -P -Depends = linux-megi - diff --git a/etc/pacman.d/mirrorlist b/etc/pacman.d/mirrorlist index 2c5d8711..0f8b181c 100644 --- a/etc/pacman.d/mirrorlist +++ b/etc/pacman.d/mirrorlist @@ -1,6 +1,6 @@ # # Arch Linux ARM repository mirrorlist -# Generated on 2023-02-06 +# Generated on 2025-10-26 # ## Geo-IP based mirror selection and load balancing @@ -21,7 +21,6 @@ # Server = http://de4.mirror.archlinuxarm.org/$arch/$repo ## Falkenstein # Server = http://eu.mirror.archlinuxarm.org/$arch/$repo -# Server = http://de5.mirror.archlinuxarm.org/$arch/$repo ### Greece ## Athens @@ -31,23 +30,12 @@ ## Budapest # Server = http://hu.mirror.archlinuxarm.org/$arch/$repo -### Japan -## Tokyo -# Server = http://jp.mirror.archlinuxarm.org/$arch/$repo - -### Singapore -# Server = http://sg.mirror.archlinuxarm.org/$arch/$repo - ### Taiwan ## Hsinchu # Server = http://tw2.mirror.archlinuxarm.org/$arch/$repo ## New Taipei City # Server = http://tw.mirror.archlinuxarm.org/$arch/$repo -### United Kingdom -## London -# Server = http://uk.mirror.archlinuxarm.org/$arch/$repo - ### United States ## California Server = http://ca.us.mirror.archlinuxarm.org/$arch/$repo diff --git a/etc/services b/etc/services index 9a7d7002..740de1df 100644 --- a/etc/services +++ b/etc/services @@ -455,6 +455,7 @@ fxp 286/tcp fxp 286/udp k-block 287/tcp k-block 287/udp +tacacss 300/tcp novastorbakcup 308/tcp novastorbakcup 308/udp entrusttime 309/tcp @@ -1315,12 +1316,6 @@ pkix-3-ca-ra 829/tcp pkix-3-ca-ra 829/udp netconf-ssh 830/tcp netconf-ssh 830/udp -netconf-beep 831/tcp -netconf-beep 831/udp -netconfsoaphttp 832/tcp -netconfsoaphttp 832/udp -netconfsoapbeep 833/tcp -netconfsoapbeep 833/udp dhcp-failover2 847/tcp dhcp-failover2 847/udp gdoi 848/tcp @@ -7675,8 +7670,8 @@ perrla 4313/tcp choiceview-agt 4314/tcp choiceview-clt 4316/tcp opentelemetry 4317/tcp -fox-skytale 4319/tcp -fox-skytale 4319/udp +skytale 4319/tcp +skytale 4319/udp fdt-rcatp 4320/tcp fdt-rcatp 4320/udp rwhois 4321/tcp @@ -7799,8 +7794,8 @@ netcabinet-com 4409/tcp itwo-server 4410/tcp found 4411/tcp smallchat 4412/udp -avi-nms 4413/tcp -avi-nms-disc 4413/udp +vision-mon 4413/tcp +vision-mon-disc 4413/udp updog 4414/tcp brcd-vr-req 4415/tcp pjj-player 4416/tcp @@ -7875,6 +7870,7 @@ awacs-ice 4488/udp ipsec-nat-t 4500/tcp ipsec-nat-t 4500/udp a25-fap-fgw 4502/sctp +m-bus-oms 4503/udp armagetronad 4534/udp ehs 4535/tcp ehs 4535/udp @@ -8094,6 +8090,7 @@ vxlan-gpe 4790/udp roce 4791/udp unified-bus 4792/tcp unified-bus 4792/udp +uet 4793/udp iims 4800/tcp iims 4800/udp iwec 4801/tcp @@ -10479,6 +10476,7 @@ odnsp 9966/udp xybrid-rt 9978/tcp visweather 9979/tcp pumpkindb 9981/tcp +kaostransport 9986/tcp dsm-scm-target 9987/tcp dsm-scm-target 9987/udp nsesrvr 9988/tcp @@ -11014,6 +11012,7 @@ notezilla-lan 21010/tcp trinket-agent 21212/tcp cohesity-agent 21213/tcp aigairserver 21221/tcp +xahaud 21337/tcp rdm-tfs 21553/tcp dfserver 21554/tcp dfserver 21554/udp @@ -11128,6 +11127,7 @@ binkp 24554/tcp binkp 24554/udp bilobit 24577/tcp bilobit-update 24577/udp +udpstp 24601/udp sdtvwcam 24666/tcp canditv 24676/tcp canditv 24676/udp @@ -11443,8 +11443,8 @@ ciscocsdb 43441/udp z-wave-tunnel 44123/tcp pmcd 44321/tcp pmcd 44321/udp -pmcdproxy 44322/tcp -pmcdproxy 44322/udp +pmproxy 44322/tcp +pmproxy 44322/udp pmwebapi 44323/tcp cognex-dataman 44444/tcp acronis-backup 44445/tcp @@ -11520,7 +11520,5 @@ nusdp-disc 49001/udp inspider 49150/tcp # my services qrcp 49153/tcp -# My ISP verizon block incomming to gateway port 22. So I need to use another port to ssh into my home server. -# https://www.reddit.com/r/verizon/comments/to1q43/verizon_5g_home_internet_blocking_ssh_service_port/ -ssh-isp 49812/tcp +wireguard 49432/udp iperf3 53497/tcp diff --git a/etc/ssh/ssh_config.d/my_ssh_config.conf b/etc/ssh/ssh_config.d/my_ssh_config.conf deleted file mode 100644 index a5f1fca3..00000000 --- a/etc/ssh/ssh_config.d/my_ssh_config.conf +++ /dev/null @@ -1,2 +0,0 @@ -Host flylightning.xyz - Port ssh-isp diff --git a/etc/sudoers b/etc/sudoers index 94678ba5..faf0e3f7 100644 --- a/etc/sudoers +++ b/etc/sudoers @@ -128,7 +128,7 @@ root ALL=(ALL:ALL) ALL # %wheel ALL=(ALL:ALL) NOPASSWD: ALL ## Uncomment to allow members of group sudo to execute any command -# %sudo ALL=(ALL:ALL) ALL +# %sudo ALL=(ALL:ALL) ALL ## Uncomment to allow any user to run sudo if they know the password ## of the user they are running the command as (root by default). diff --git a/etc/systemd/system/multi-user.target.wants/mimic@wlan0.service b/etc/systemd/system/multi-user.target.wants/mimic@wlan0.service new file mode 120000 index 00000000..dce9a731 --- /dev/null +++ b/etc/systemd/system/multi-user.target.wants/mimic@wlan0.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/mimic@.service
\ No newline at end of file diff --git a/home/xyz/.abook/abookrc b/home/xyz/.abook/abookrc new file mode 100644 index 00000000..59b2081d --- /dev/null +++ b/home/xyz/.abook/abookrc @@ -0,0 +1,14 @@ +# bad default coloring, I dislike +#set use_colors=true + +# '$BROWSER' does not work +set www_command="$BROWSER" + +set index_format=" {name:22} {email:30} {phone:14|workphone|mobile|fax|misc_phones}" + +field misc_phones = "Misc Phones", list + +view CONTACT = name, email +view ADDRESS = address, address2, city, state, zip, country +view PHONE = phone, workphone, fax, mobile, misc_phones +view OTHER = nick, url, notes, anniversary, groups diff --git a/home/xyz/.bashrc b/home/xyz/.bashrc index 86080ad2..8174426a 100644 --- a/home/xyz/.bashrc +++ b/home/xyz/.bashrc @@ -53,7 +53,12 @@ alias c=cfg alias cri='curl -Is' alias crig='curl -Is www.google.com' alias d='sdcv --color' -alias e='"$PAGER"' +# Using '"$PAGER"' will cause complete-alias unable to complete "e <tab>" and +# "e --<tab>". I don't know why alias v='"$EDITOR"' does not have this issue, I +# guess maybe it is related to less has some fzf completion? see `complete -p +# less` output is "complete -F _fzf_path_completion less". Temporary ignore +# shellcheck warnings about this if not met any issues. +alias e="$PAGER" # https://superuser.com/a/1202867 alias fdu="find . -maxdepth 1 -execdir du -sh '{}' \+ | sort -h" alias g=git @@ -63,13 +68,17 @@ alias grr='grep --color=auto -iIR' alias h=htop alias i=nsxiv alias j=journalctl +alias ju='journalctl --user' alias l='ls --color=auto -A --group-directories-first' alias ll='ls --color=auto -lAh --group-directories-first' #alias lo=loop alias lop='loop ping' alias lopd='loop ping 9.9.9.9' alias m=man +alias mpf='mpra -c "$HOME/programs/repos/fly/any/fsh-git"; sudo pacman -Sy fsh-git --noconfirm' alias p=pacman +# Pacman Qqne Redirect +alias pqr='pacman -Qqne > "$XDG_CONFIG_HOME/myconf/pacman_Qqne"; pacman -Qqme > "$XDG_CONFIG_HOME/myconf/pacman_Qqme"' alias pt=pactree alias pu=paru alias qre='qrencode -t utf8i -m 1' @@ -80,10 +89,6 @@ alias sa='ssh-add -l || ssh-add' alias se='sudo -E ' alias sp='ssh pp' alias spd='speedtest; librespeed-cli' -alias sst='ssh studio' -# \" to consider $HOME contain space, need \ else " will be expanded locally, need \$ else $HOME will expand locally -# can test with: alias mytest='ssh studio for i in \"\$SSH_CONNECTION\"\; do echo \$i\; echo a\; done' -alias sstm='ssh -t -- studio mpra -c \"\$HOME/programs/repos/fly/any/fsh-git\"' # can test this mess with `alias tt='echo "\$haha \"lala\""'` alias sun='printf "set \$Longitude \"-121.89\"\nset \$Latitude \"37.34\"\nrem [sunrise()] msg sunrise\nrem [sunset()] msg sunset" | remind -n -' # another way: @@ -94,6 +99,9 @@ alias y=systemctl alias yd='systemctl list-dependencies --all' alias ydr='systemctl list-dependencies --all --reverse' alias ye='systemctl list-unit-files --state=enabled' +# sYstemctl Enabled Redirect +alias yer='systemctl list-unit-files --state=enabled > "$XDG_CONFIG_HOME/myconf/sye"; systemctl --user list-unit-files --state=enabled > "$XDG_CONFIG_HOME/myconf/syue"' +alias yr='systemctl restart' alias ys='systemctl status' alias yu='systemctl --user' alias yue='systemctl --user list-unit-files --state=enabled' @@ -112,6 +120,7 @@ alias vrm='"$EDITOR" "$XDG_DOCUMENTS_DIR/notes/others/recurring_maintenance.md"' alias vt='"$EDITOR" "$XDG_DOCUMENTS_DIR/notes/others/tmp_mobile_notes.md"' alias xmr='monero-wallet-cli --config-file="$HOME/.bitmonero/monero-wallet-cli.conf"' alias xmrds='monerod status; monerod print_net_stats' +alias xr='xset r rate 250 30' alias za='zoxide add' #alias zq='zoxide query' #alias zqi='zoxide query -i' @@ -126,6 +135,7 @@ alias glmark2='glmark2 --fullscreen --annotate' alias grep='grep --color=auto' #alias info='info --vi-keys' alias ls='ls --color=auto' +alias nethogs='nethogs -C' alias radeontop='radeontop -c' alias rem='rem -@' alias remind='remind -@' diff --git a/home/xyz/.config/fcitx5/conf/pinyin.conf b/home/xyz/.config/fcitx5/conf/pinyin.conf index 9d561f07..dce6f87b 100644 --- a/home/xyz/.config/fcitx5/conf/pinyin.conf +++ b/home/xyz/.config/fcitx5/conf/pinyin.conf @@ -10,8 +10,10 @@ SpellEnabled=True SymbolsEnabled=True # Enable Chaizi ChaiziEnabled=True -# Enable Characters in Unicode CJK Extension B +# Enable more Characters after Unicode CJK Extension B ExtBEnabled=True +# Show stroke candidates when typing with h(一), s(丨), p(丿), n(㇏), z(𠃍) +StrokeCandidateEnabled=True # Enable Cloud Pinyin CloudPinyinEnabled=False # Cloud Pinyin Index @@ -127,6 +129,8 @@ C_CH=False F_H=False # l <-> n L_N=False +# l <-> r +L_R=False # s <-> sh S_SH=False # z <-> zh diff --git a/home/xyz/.config/fcitx5/config b/home/xyz/.config/fcitx5/config index 147e612e..db5b9eb5 100644 --- a/home/xyz/.config/fcitx5/config +++ b/home/xyz/.config/fcitx5/config @@ -15,6 +15,8 @@ EnumerateGroupBackwardKeys= ActivateKeys= # Deactivate Input Method DeactivateKeys= +# Time limit in milliseconds for triggering modifier key shortcuts +ModifierOnlyKeyTimeout=250 [Hotkey/TriggerKeys] 0=Control+space @@ -40,6 +42,8 @@ DeactivateKeys= [Behavior] # Active By Default ActiveByDefault=False +# Reset state on Focus In +resetStateWhenFocusIn=No # Share Input State ShareInputState=No # Show preedit in application @@ -62,6 +66,12 @@ CustomXkbOption= EnabledAddons= # Preload input method to be used by default PreloadInputMethod=True +# Allow input method in the password field +AllowInputMethodForPassword=False +# Show preedit text when typing password +ShowPreeditForPassword=False +# Interval of saving user data in minutes +AutoSavePeriod=30 [Behavior/DisabledAddons] 0=clipboard @@ -71,5 +81,4 @@ PreloadInputMethod=True 4=kimpanel 5=notificationitem 6=spell -7=wayland diff --git a/home/xyz/.config/mpv/scripts/sponsorblock-minimal.lua b/home/xyz/.config/mpv/scripts/sponsorblock-minimal.lua deleted file mode 120000 index cb3390f8..00000000 --- a/home/xyz/.config/mpv/scripts/sponsorblock-minimal.lua +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/mpv/sponsorblock-minimal.lua
\ No newline at end of file diff --git a/home/xyz/.config/myconf/pacman_Qqme b/home/xyz/.config/myconf/pacman_Qqme index b2eb4596..d00dab80 100644 --- a/home/xyz/.config/myconf/pacman_Qqme +++ b/home/xyz/.config/myconf/pacman_Qqme @@ -1,13 +1,16 @@ +abook absolutely-proprietary arkenfox-user.js -atool2-git bash-complete-alias cht.sh-git dashbinsh +distccd-arch-arm f3 +gtk2fontsel htop-vim koreader-bin librespeed-cli-bin +mimic-bpf-git mpv-sponsorblock-minimal-git neovim-plug networkmanager-dispatcher-chrony @@ -24,11 +27,12 @@ stardict-oxford-gb-formated stardict-urban stardict-wikt-en-en stardict-wordnet +swgp-go task-spooler tio tldr-sh ttf-adobe-kaiti -ttf-gelasio-ib +ttf-gelasio typioca-git units yt-dlp-drop-in diff --git a/home/xyz/.config/myconf/pacman_Qqne b/home/xyz/.config/myconf/pacman_Qqne index 9ddce409..1bd66764 100644 --- a/home/xyz/.config/myconf/pacman_Qqne +++ b/home/xyz/.config/myconf/pacman_Qqne @@ -1,4 +1,3 @@ -7zip alacritty alsa-utils archlinuxarm-keyring @@ -9,6 +8,7 @@ base base-devel bash-completion bcprov +bpf browserpass browserpass-firefox busybox @@ -16,7 +16,6 @@ chatty chrony clinfo cloc -cpio danctnix-keyring danctnix-phosh-ui-meta danctnix-tweaks-app-phosh @@ -30,6 +29,7 @@ distcc dos2unix duplicity enca +ethtool evince-mobile evtest exfatprogs @@ -38,6 +38,7 @@ fastfetch ffmpeg fio firefox +flatpak fsh-git fwupd fzf @@ -55,7 +56,6 @@ go gsl gst-plugins-bad gst-plugins-good -gtk2fontsel gtk3 hdparm hunspell-en_us @@ -67,6 +67,7 @@ ioping iotop-c iperf3 irqbalance +isync java-commons-lang jdk-openjdk jq @@ -75,12 +76,12 @@ ldns lf libjxl libotr +linux-megi-headers llvm lostfiles loupe lsof man-pages -megapixels mesa mesa-utils meson @@ -92,6 +93,7 @@ mpv-mpris mupdf-tools namcap nawk +neomutt neovim net-tools nethogs @@ -142,8 +144,8 @@ smartmontools speedtest-cli splix strace -stress sysbench +tcpdump tesseract-data-chi_sim tesseract-data-chi_tra tesseract-data-eng @@ -155,7 +157,6 @@ tree ttf-caladea ttf-carlito ttf-liberation -unrar-free unzip usbutils vdpauinfo @@ -172,6 +173,5 @@ xorg-xwininfo yarn yt-dlp zbar -zip zoxide zramswap diff --git a/home/xyz/.config/myconf/sye b/home/xyz/.config/myconf/sye index 3beb745b..532ba1e5 100644 --- a/home/xyz/.config/myconf/sye +++ b/home/xyz/.config/myconf/sye @@ -2,7 +2,7 @@ UNIT FILE STATE PRESET atd.service enabled disabled chronyd.service enabled disabled danctnix-tweakd.service enabled disabled -eg25-manager.service enabled disabled +distccd-armv8.service enabled disabled getty@.service enabled enabled irqbalance.service enabled disabled ModemManager.service enabled disabled @@ -12,6 +12,7 @@ NetworkManager.service enabled disabled nftables.service enabled disabled phosh.service enabled disabled sshd.service enabled disabled +swgp-go.service enabled disabled systemd-resolved.service enabled enabled zramswap.service enabled disabled cups.socket enabled disabled @@ -21,4 +22,4 @@ paccache.timer enabled disabled pacman-filesdb-refresh.timer enabled disabled units_currency.timer enabled disabled -21 unit files listed. +22 unit files listed. diff --git a/home/xyz/.config/myconf/syue b/home/xyz/.config/myconf/syue index 06f7fe6d..859d63d0 100644 --- a/home/xyz/.config/myconf/syue +++ b/home/xyz/.config/myconf/syue @@ -1,12 +1,12 @@ -UNIT FILE STATE PRESET -mmsd-tng.service enabled enabled -ssh-agent.service enabled enabled -vvmd.service enabled enabled -wireplumber.service enabled enabled -xdg-user-dirs-update.service enabled enabled -gnome-keyring-daemon.socket enabled enabled -p11-kit-server.socket enabled enabled -pipewire-pulse.socket enabled enabled -pipewire.socket enabled enabled +UNIT FILE STATE PRESET +mmsd-tng.service enabled enabled +ssh-agent.service enabled enabled +vvmd.service enabled enabled +wireplumber.service enabled enabled +xdg-user-dirs.service enabled enabled +gnome-keyring-daemon.socket enabled enabled +p11-kit-server.socket enabled enabled +pipewire-pulse.socket enabled enabled +pipewire.socket enabled enabled 9 unit files listed. diff --git a/home/xyz/.config/myconf/upd_rsync_files b/home/xyz/.config/myconf/upd_rsync_files index 17734a06..876f049c 100644 --- a/home/xyz/.config/myconf/upd_rsync_files +++ b/home/xyz/.config/myconf/upd_rsync_files @@ -1 +1 @@ -/home/xyz/programs +/home/xyz/programs/repos diff --git a/home/xyz/.config/neomutt/mail b/home/xyz/.config/neomutt/mail new file mode 100644 index 00000000..9c5df856 --- /dev/null +++ b/home/xyz/.config/neomutt/mail @@ -0,0 +1,4 @@ +set smtp_url='smtps://xyz@mail.flylightning.xyz' +set folder="$XDG_DATA_HOME/mail/xyz@mail.flylightning.xyz" +# need to put mailboxes here in each accuont, don't only put one in neomuttrc, else can't switch accounts +mailboxes =INBOX =Sent =Drafts =Archive =Junk =Trash diff --git a/home/xyz/.config/neomutt/mail2 b/home/xyz/.config/neomutt/mail2 new file mode 100644 index 00000000..82663aa8 --- /dev/null +++ b/home/xyz/.config/neomutt/mail2 @@ -0,0 +1,4 @@ +set smtp_url='smtps://xyz@mail2.flylightning.xyz' +set folder="$XDG_DATA_HOME/mail/xyz@mail2.flylightning.xyz" +# need to put mailboxes here in each accuont, don't only put one in neomuttrc, else can't switch accounts +mailboxes =INBOX =Sent =Drafts =Archive =Junk =Trash diff --git a/home/xyz/.config/neomutt/neomuttrc b/home/xyz/.config/neomutt/neomuttrc new file mode 100644 index 00000000..afd5aa75 --- /dev/null +++ b/home/xyz/.config/neomutt/neomuttrc @@ -0,0 +1,203 @@ +# references: +# https://github.com/LukeSmithxyz/mutt-wizard +# https://wiki.archlinux.org/title/Mutt +# https://videos.lukesmith.xyz/ +# https://docs.kernel.org/process/email-clients.html +# https://blog.flaport.net/configuring-neomutt-for-email.html + +# maybe useful: +# `man neomuttrc` +# `man neomutt` +# /etc/neomutt +# https://neomutt.org/guide/gettingstarted.html +# /usr/share/doc/neomutt/optionalfeatures.html +# has hotkey documentation: +# /usr/share/doc/neomutt/manual.txt + +# realname and spoolfile deprecated, use real_name and spool_file, also some other variable names, see: +# https://github.com/neomutt/neomutt/commit/a5eaeb51b14c484fa52f6f519446253dea5667ca + +source mail2 +# maybe useful for multiple accounts +#folder-hook $folder 'source mail2' +source mail +#folder-hook $folder 'source mail' + +# note the imaps:// and smtps://, maybe more secure? +# note: xyz@flylightning.xyz will not work, need mail.flylightning.xyz, maybe because they require the actual imaps and smtps email server DNS +#set smtp_url='smtps://xyz@mail.flylightning.xyz' +# mbox_type not sure if needed, maybe needed because isync/mbsync set to use maildir format +set mbox_type=Maildir +#set folder="$XDG_DATA_HOME/mail/xyz@mail.flylightning.xyz" +# if fully online and not using mbsync: +#set folder='imaps://xyz@mail.flylightning.xyz' + +# https://wiki.archlinux.org/title/Mutt#Pass +# need "" instead of ''? +# Just `pass show xxx` also works. My xxx password also has lines of other info I do not want to output +# credit: GPL-2.0-or-later https://git.zx2c4.com/password-store/tree/contrib/dmenu/passmenu +# pipe to `head -n1` also works, it seems it will auto strip out \n newline char? +set imap_pass="`pass show master3 | { IFS= read -r p; printf %s \"$p\";}`" +set smtp_pass="`pass show master3 | { IFS= read -r p; printf %s \"$p\";}`" + +set from='xyz@flylightning.xyz' +# /etc/neomuttrc says if use from var this will not use? not sure if works +set real_name='Xiao Pan' + +# this seems also determines sidebar mailbox order +#mailboxes =INBOX =Sent =Drafts =Archive =Junk =Trash +# if fully online and use `set folder="imaps://xyz@mail.flylightning.xyz"` instead: +# default not auto subscribe to inbox? need `mailboxes =INBOX` at least +#mailboxes =INBOX +#set imap_check_subscribed + +# spool_file not sure if needed +# + seems mean remote? +set spool_file='+INBOX' +set record='+Sent' +set trash='+Trash' +set postponed='+Drafts' + +# `man neomuttrc.5` says "Header caching can greatly improve speed when ..." +set header_cache="$XDG_CACHE_HOME/mutt" +set message_cache_dir="$XDG_CACHE_HOME/mutt" + +# Allow Mutt to open a new IMAP connection automatically. +unset imap_passive + +set attach_save_dir="$XDG_DOWNLOAD_DIR" +set attach_save_without_prompting + +# linux kernel mailing list rules: +set send_charset="us-ascii:utf-8" +# Sender, email address, and sign-off line must match +# because joe@localhost is just embarrassing +unset use_domain + +# about pgp: +#auto_view application/pgp-encrypted +# maybe use account-hook or folder-hook to `unset crypt_auto_sign` for accounts I do not wish to auto sign +set crypt_auto_sign +set pgp_default_key='FDA389A17B94BCE0E2FA3D71842BFD347BE06812' +# maybe useful: crypt_opportunistic_encrypt, crypt-hook + +# https://neomutt.org/guide/gettingstarted#2-4-%C2%A0sidebar +set sidebar_visible +set sidebar_width=20 +# manpage suggested +# %<... is nested if, see https://neomutt.org/feature/nested-if +set sidebar_format='%B%<F? [%F]>%* %<N?%N/>%S' +set sidebar_short_path +# needed for some sidebar features +set mail_check_stats + +# to avoid lags using IMAP with some email providers (yahoo for example) +set mail_check=60 + +# no ask auto save to draft +set postpone='yes' + +# need echo here to run an external shell command, see https://neomutt.org/feature/global-hooks +# startup-hook works, but I'm not confidient with it because shutdown-hook is buggy, see below. Because I'll need a wrapper script for mbsync after shutdown, I decided to just use a wrapper script for mbsync before startup also for now +#startup-hook 'echo `mbsync -a`' +# I decided not to use timeout-hook and shutdown-hook hooks due to its issues with mbsync, see below +# timeout-hook and shutdown-hook configured with startup-hook will cause timeout-hook and shutdown-hook mbsync not working? see https://github.com/neomutt/neomutt/issues/3298 , my experience is shutdown-hook's mbsync not working, not sure how to test timeout-hook +# somehow `sleep 1; mbsync -a` works? +# maybe related: https://github.com/neomutt/neomutt/issues/4184 https://github.com/neomutt/neomutt/pull/4200 +# more bug notes see vq +# consider I may use another email client to access remote email mailboxes, sync when shutdown so those other email client can get latest changes +#shutdown-hook 'echo `mbsync -a`' +# I don't understand timeout-hook and $timeout very well, but seems useful, $timeout default 600 seconds, so maybe it sync every 600s +#timeout-hook 'echo `mbsync -a`' + +# no prompt for deleting emails +set delete=yes +# no prompt for moving emails +set confirm_append=no + +# man neomuttrc, query_command: "NeoMutt will add quotes around the string +# substituted for "%s" automatically according to shell quoting rules, so you +# should avoid adding your own. If no "%s" is found in the string, NeoMutt will +# append the user's query to the end of the string." +set query_command="abook --mutt-query" +# https://neomutt.org/guide/advancedusage#8-%C2%A0external-address-queries +# completion when ask for address input +# default ^T +# another way is Q, it will let me select an address from abook and start a new email +bind editor <Tab> complete-query + +# email from insp to ca mail server to others will have "Received: from xyzinsp.mynetworksettings.com" in email header, VPN only change IP but not this auto-detected hostname by neomutt, if privacy is a concern for future anonymous email server, set hostname=..., e.g.: +#set hostname='anonymous' + +# maybe: +# maybe, from mutt-wizard: +# maybe add configs from mutt-wizard: +# - add Maildir configs? see arch wiki and mutt-wizard, not fully understood +# - mime type configs +# - other configs +# seems not working with this: +#set smtp_authenticators='gssapi:login' +#set forward_attachments=yes +#set forward_format = "Fwd: %s" +# can configure mailcap configs ~/.mailcap to use lynx to auto show html with lynx +#auto_view text/html + +# https://blog.flaport.net/configuring-neomutt-for-email.html +# https://github.com/LukeSmithxyz/mutt-wizard/blob/master/share/mutt-wizard.muttrc +# M default to show-log-messages, can be executed by `:exec show-log-messages` +bind index,pager M noop +# C deafult to copy-message +bind index,pager C noop +# g default to group-reply +bind index,pager g noop +bind index,pager R group-reply +bind index,pager i noop + +macro index,pager \'a "<change-folder>=Archive<enter>" "go to archive" +macro index,pager \'d "<change-folder>=Drafts<enter>" "go to drafts" +macro index,pager \'i "<change-folder>=INBOX<enter>" "go to inbox" +macro index,pager \'j "<change-folder>=Junk<enter>" "go to junk" +macro index,pager \'s "<change-folder>=Sent<enter>" "go to sent" +macro index,pager \'t "<change-folder>=Trash<enter>" "go to trash" +macro index,pager Ca ";<copy-message>=Archive<enter>" "copy mail to archive" +macro index,pager Cd ";<copy-message>=Drafts<enter>" "copy mail to drafts" +macro index,pager Ci ";<copy-message>=INBOX<enter>" "copy mail to inbox" +macro index,pager Cj ";<copy-message>=Junk<enter>" "copy mail to junk" +macro index,pager Cs ";<copy-message>=Sent<enter>" "copy mail to sent" +macro index,pager Ct ";<copy-message>=Trash<enter>" "copy mail to trash" +macro index,pager Ma ";<save-message>=Archive<enter>" "move mail to archive" +macro index,pager Md ";<save-message>=Drafts<enter>" "move mail to drafts" +macro index,pager Mi ";<save-message>=INBOX<enter>" "move mail to inbox" +macro index,pager Mj ";<save-message>=Junk<enter>" "move mail to junk" +macro index,pager Ms ";<save-message>=Sent<enter>" "move mail to sent" +macro index,pager Mt ";<save-message>=Trash<enter>" "move mail to trash" +# here must specify full path of the file to source, else it will souce in the dir where neomutt is execute at +# use vim-like uppercase marks +# Ca mail server +macro index,pager \'C '<sync-mailbox><enter-command>source "$XDG_CONFIG_HOME/neomutt/mail"<enter><change-folder>!<enter>' +# Ib mail server +macro index,pager \'I '<sync-mailbox><enter-command>source "$XDG_CONFIG_HOME/neomutt/mail2"<enter><change-folder>!<enter>' +# maybe useful for multiple accounts +#macro index c "<change-folder>?<change-dir><home>^K=<enter>" + +macro index S "<shell-escape>mbsync -a<enter>" "sync email" + +bind index L limit +bind attach l view-mailcap +bind pager l view-attachments +bind index l display-message +bind browser l select-entry +bind pager,attach h exit +bind index h quit +bind index g first-entry +bind index G last-entry +bind browser g top-page +bind browser G bottom-page +bind pager g top +bind pager G bottom + +# N hotkey default functions change bind to E hotkey, because I want to bind N as search-opposite +bind index E toggle-new +bind pager E mark-as-new +bind browser E select-new +bind index,pager,browser N search-opposite diff --git a/home/xyz/.config/sdcv_ordering b/home/xyz/.config/sdcv_ordering index 85f847c0..ad60d82b 100644 --- a/home/xyz/.config/sdcv_ordering +++ b/home/xyz/.config/sdcv_ordering @@ -5,7 +5,7 @@ MDBG Chinese-English dictionary (www.mdbg.net) 朗道汉英字典5.0 WordNet Moby Thesaurus II -wikt-en-en-2024-10-05 +wikt-en-en-2025-10-05 Urban Dictionary P1 (En-En) Urban Dictionary P2 (En-En) Dictionnaire de l’Académie Française, 8ème édition (1935). diff --git a/home/xyz/.local/bin/neomutt b/home/xyz/.local/bin/neomutt new file mode 100755 index 00000000..53d28ac5 --- /dev/null +++ b/home/xyz/.local/bin/neomutt @@ -0,0 +1,7 @@ +#!/bin/sh + +# neomutt shutdown-hook is buggy with mbsync, so I decided to use a wrapper script instead +# more see neomuttrc and vq bug notes +mbsync -a +/usr/bin/neomutt "$@" +mbsync -a diff --git a/home/xyz/.mbsyncrc b/home/xyz/.mbsyncrc new file mode 100644 index 00000000..47356a43 --- /dev/null +++ b/home/xyz/.mbsyncrc @@ -0,0 +1,57 @@ +# references: +# /usr/share/doc/isync/examples/mbsyncrc.sample +# https://wiki.archlinux.org/title/Isync +# `man mbsync` +# https://github.com/LukeSmithxyz/mutt-wizard + +IMAPStore xyz@mail.flylightning.xyz-remote +Host mail.flylightning.xyz +User xyz +# credit: GPL-2.0-or-later https://git.zx2c4.com/password-store/tree/contrib/dmenu/passmenu +PassCmd "pass master3 | { IFS= read -r p; printf %s \"$p\";}" +TLSType IMAPS +CertificateFile /etc/ssl/certs/ca-certificates.crt + +IMAPStore xyz@mail2.flylightning.xyz-remote +Host mail2.flylightning.xyz +User xyz +# credit: GPL-2.0-or-later https://git.zx2c4.com/password-store/tree/contrib/dmenu/passmenu +PassCmd "pass master3 | { IFS= read -r p; printf %s \"$p\";}" +TLSType IMAPS +CertificateFile /etc/ssl/certs/ca-certificates.crt + +MaildirStore xyz@mail.flylightning.xyz-local +# man page says needed +Subfolders Verbatim +# trailing slash important? +# seems $XDG_DATA_HOME does not work? +Path ~/.local/share/mail/xyz@mail.flylightning.xyz/ +Inbox ~/.local/share/mail/xyz@mail.flylightning.xyz/INBOX + +MaildirStore xyz@mail2.flylightning.xyz-local +# man page says needed +Subfolders Verbatim +# trailing slash important? +# seems $XDG_DATA_HOME does not work? +Path ~/.local/share/mail/xyz@mail2.flylightning.xyz/ +Inbox ~/.local/share/mail/xyz@mail2.flylightning.xyz/INBOX + +Channel xyz@mail.flylightning.xyz +Expunge Both +# old system use master and slave +Far :xyz@mail.flylightning.xyz-remote: +Near :xyz@mail.flylightning.xyz-local: +# not sure if needed +Patterns * +Create Both +SyncState * + +Channel xyz@mail2.flylightning.xyz +Expunge Both +# old system use master and slave +Far :xyz@mail2.flylightning.xyz-remote: +Near :xyz@mail2.flylightning.xyz-local: +# not sure if needed +Patterns * +Create Both +SyncState * diff --git a/home/xyz/.mozilla/firefox/xxxxxxxx.fly/user-overrides.js b/home/xyz/.mozilla/firefox/xxxxxxxx.fly/user-overrides.js index f517fbcc..bf327547 100644 --- a/home/xyz/.mozilla/firefox/xxxxxxxx.fly/user-overrides.js +++ b/home/xyz/.mozilla/firefox/xxxxxxxx.fly/user-overrides.js @@ -6,13 +6,14 @@ user_pref("_user.js.parrot", "custom overrides: starting"); // douyu pay, bilibili stream watch and user space, pixiv some images not show // now default for version 115.1 so no need //user_pref("network.http.referer.XOriginPolicy", 0); -// in the past: baidu +// in the past: baidu; now: zwfwbl.cscse.edu.cn //user_pref("security.ssl.require_safe_negotiation", false); // fixes and issues unrelated to arkenfox user.js and addons: // disable ublock origin: // baidu drive save to my drive not working // baidu drive verify phone when delete file not working +// alipay login sliding shape challenge, maybe also need to disable ETP and RFP // disable enhanced tracking protection: // google drive can't download // douyu verification for change password @@ -26,13 +27,15 @@ user_pref("_user.js.parrot", "custom overrides: starting"); // mail.qq.com // arkenfox v128 disabled these previously enabled options, I want to enable them -// set to false to fix: image upload from local, image check not robot, disable surfingkey alt-s hotkey, twitch login and follow, douyin login, douyin chat in live streaming room, google map highway name, protomaps China province name, joinhandshake.com maybe need to disable this once, adobe express +// set to false to fix: image upload from local, image check not robot, disable surfingkey alt-s hotkey, twitch login and follow, douyin login, douyin chat in live streaming room, google map highway name, protomaps China province name, joinhandshake.com maybe need to disable this once, adobe express, some VPS web VNC keyboard shift modifier not working (e.g., I can't press shift+[ to get { and instead I get [, also for all other keys) user_pref("privacy.resistFingerprinting", true); user_pref("privacy.resistFingerprinting.letterboxing", true); // this can be used to disable RFP by domain, see user.js and https://github.com/arkenfox/user.js/issues/1804#issuecomment-2331701765 //user_pref("privacy.resistFingerprinting.exemptedDomains", "*.example.invalid"); // set to false to fix: labster, protomaps, starlink.com availability map, istheservicedown.com outage map, adobe express user_pref("webgl.disabled", true); +// pp maybe need this (disable OCSP) for its mobile network to work +//user_pref("security.OCSP.enabled", 0); // http://kb.mozillazine.org/Network.cookie.lifetimePolicy // https://github.com/arkenfox/user.js/releases/tag/102.1 diff --git a/home/xyz/.profile b/home/xyz/.profile index a25d475d..f926c827 100644 --- a/home/xyz/.profile +++ b/home/xyz/.profile @@ -89,6 +89,25 @@ export SCR_HEIGHT=720 #export GDK_SCALE=2 #export GDK_DPI_SCALE=0.5 +# Edited from upd comment: `duplicity --use-agent` not working when ssh to pp +# and insp, works on insp, not sure why. The gpg error logs are "gpg: public +# key decryption failed: Inappropriate ioctl for device" and "gpg: decryption +# failed: Inappropriate ioctl for device". It seems related to I did not put +# `export GPG_TTY=$(tty)` in pp xyz user's .profile, putting that in .profile +# is suggested in `man gpg-agent`. After putting that, test with `echo | gpg -s +# >/dev/null` works. but `echo | sudo gpg -s > /dev/null` does not work even if +# I put `export GPG_TTY=$(tty)` in root user's .profile file. `sudo -i` then +# `echo | gpg -s >/dev/null` works for root if put `export GPG_TTY=$(tty)` in +# root .profile. With sudo, it needs `sudo --preserve-env=GPG_TTY`, test with +# `echo | sudo --preserve-env=GPG_TTY gpg -s >/dev/null` works even if I do not +# put `export GPG_TTY=$(tty)` in root .profile. using `sudo +# --preserve-env=GPG_TTY` with `duplicity --use-agent` for pp also works. +# However, using `sudo --preserve-env=GPG_TTY` may be not secure because I +# noticed that root user's `tty` output is different, but my root user and xyz +# user's gpg keys are the same, so whatever for now. There maybe a better way +# instead. +export GPG_TTY=$(tty) + playerctld daemon # must source .bashrc after export _ZO_ECHO=1 and INPUTRC=..., else these two env will has no effect, don't know why diff --git a/home/xyz/.ssh/config b/home/xyz/.ssh/config index a2cbaa8f..d4e2d229 100644 --- a/home/xyz/.ssh/config +++ b/home/xyz/.ssh/config @@ -6,12 +6,6 @@ AddKeysToAgent yes # more see alacritty.toml config SendEnv COLORTERM -# tabs and empty only for readability, without also works, not sure about newline -Host studio - Hostname flylightning.xyz - Port ssh-isp - User xyz - Host hpc Hostname coe-hpc1.sjsu.edu User 012404405 @@ -30,10 +24,14 @@ Host ca Hostname ca.flylightning.xyz User xyz -Host aa - Hostname aawg - User xyz - Host ib Hostname ib.flylightning.xyz User xyz + # ib VPS provider cancelled ipv6 + #AddressFamily inet6 + +Host ba + Hostname ba.flylightning.xyz + User xyz + # ba ipv4 has better optimized route + AddressFamily inet |
