These are config files and scripts which power my arch linux system.
- Execute setup script:
sudo pacman -S git git clone https://github.com/SmirnovAlexander/DotFiles.git && cd DotFiles ./setup.sh
- Reboot in case of desktop and relogin in case of server
- (Optionally) Install
conda, initialize ssh and gpg keys:./post_setup.sh
- Install neovim plugins:
:PlugInstall :Copilot auth - Install tmux plugins:
<C-b> + I - Configure Brave browser:
- enable brave sync:
brave://settings/braveSync/setupor:- disable password savings:
brave://settings/passwords - change search engine to Google:
brave://settings/search - enable autocomplete searches option:
brave://settings/privacy - install extensions:
- disable password savings:
- enable brave sync:
.xinitrcshould be copied from default and edited Arch Wiki | Xinit / xinitrc- for the iGPU/GPU laptop, follow info from my thread Arch Forum | Xorg: Cannot run in framebuffer mode
- to enable pacman parallel download follow Arch Wiki | pacman / Enabling parallel downloads
- to speed up pacman packages download, update mirrorlist by something like
sudo reflector --sort rate --connection-timeout 2 --download-timeout 2 --threads 10 --save /etc/pacman.d/mirrorlist - if you can't log in after a couple of failed attempts it is probably caused by
faillockArch Wiki | security / Lock out user after three failed login attempts - to change
sudotimeout follow Arch Wiki | sudo / Tips and tricks / Reduce the number of times you have to type a password rangeris not previewing anything when user isroot. This is on purpose and should be toggled withzp(enable syntax highlighting withzv) GitHub | ranger / issuestmuxis not loading config from$XDG_CONFIG_HOME/tmux/tmux.confon old versionsnsxivimages in thumbnail mode and.HEICare rotated according toEXIF:Orientationtag but they shouldn't- maybe because of
imagemagickpackage required bybetterlockscreen
- maybe because of
- for
virtualboxto function properly, addibt=offto kernel parameters- to add shared folder, install
virtualbox-guest-iso(orvirtualbox-guest-utils), runDevices -> Insert Guest Additions CD ImageandMy Computer -> CD Drive (VirtualBox Guest Additions) -> VBoxWindowsAdditions.exe. - add user to
vboxusersgroup to detect USB devices - shared clipboard (requires guest additions): highlight the Guest VBox in the VirtualBox console, open General -> Advanced. Here you can choose between various Shared Clipboard settings: Disabled, Guest to Host, Host to Guest or Bidirectional
- to add shared folder, install
- to connect MTP devices (e.g. Garmin), use libmtp
- to make printer work use Avahi
- suspend vs hibernate:
- suspend:
- seems to drain a lot of battery, but it might be because of lid opens in backpack and laptop turns on
- investigate the effect of disabling waking on lid open
- hibernate:
- doesn't work by default
- general configuration instruction: Arch Wiki | Power management / Suspend and hibernate
- create swap for hibernation (maybe not needed): Arch Wiki | Swap / Swap file creation
- add kernel parameters: Arch Wiki | Kernel parameters / systemd-boot
- in case "Not enough swap space for hibernation": [SOLVED] Fail to hibernate "Not enough swap space for hibernation"
- suspend:
- to connect meshtastic:
- install driver from aur (maybe would've worked w/o it) and reboot
sudo pacman -S esptoolll /dev | grep USBesptool.py -p /dev/ttyCH343USB1 chip_id- Download release from github
./device-install.sh -p /dev/ttyCH343USB1 -f firmware-tbeam-2.1.19.eb7025f.binmeshtastic --port /dev/ttyCH343USB1 --infomeshtastic --port /dev/ttyCH343USB1 --set lora.region 'RU'
- to set up wifi hotspot (shares VPN as well): Arch Wiki | Software access point | linux-wifi-hotspot
- to download/upload config to baofeng walkie-talkie:
- install drivers (another source)
- install software from baofeng website
- reboot
- to fix screen tearing enable vsync with glx backend in picom (already enabled in picom.conf)
- to fix openvpn-install script on arch linux server apply openvpn-install.diff
- to use this setup on ROS embedded device, apart from sourcing ROS setup files, configure ip addresses like this in shell profile:
export ROS_HOSTNAME=$(ip route | grep wlan0 | grep src | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -1) export ROS_MASTER_URI=http://$ROS_HOSTNAME:11311
- to enable zoom in
st(to make it work in neovim -- disable mouse:set mouse=):put them before{ ControlMask, Button4, zoom, {.f = +1} }, { ControlMask, Button5, zoom, {.f = -1} },XK_ANY_MODmasks - to copy output, add:
static char *copyoutput[] = { "/bin/sh", "-c", "st-copyout", "externalpipe", NULL }; { MODKEY, XK_o, externalpipe, {.v = copyoutput } }, - if laptop immediately wakes up after
suspendorhibernate-> maybe I am touching touchpad? - to use local X11 display from remote server via ssh, use:
- add
-listen tcpto X11 startup args/etc/X11/xinit/xserverrc xhost +- export DISPLAY=IP:0.0
- add
- gparted might not format partition because of udiskie automount; disable it
- to enable play/pause via Bluetooth headset, use
systemctl --user enable --now mpris-proxy(https://wiki.archlinux.org/title/MPRIS#Bluetooth) - to stream game window with OBS even if window is not in focus:
- install gamescope for separate X session (https://wiki.archlinux.org/title/Gamescope)
- if doesn't work, use https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=gamescope-git, specifying pkgver (remove pkgver function later in the file)
- install https://github.com/nowrep/obs-vkcapture
- run lutris game with gamescope
OBS_VKCAPTURE=1 gamescope -W 1920 -H 1080 -- gamemoderun obs-gamecapture lutris lutris:rungame/battlenet - in OBS choose Game Capture as a source
- install gamescope for separate X session (https://wiki.archlinux.org/title/Gamescope)
- laptop wakes up on physical connections and lid
- Arch Wiki | Power management | Wakeup triggers | Ryzen 7000 Series
- (supplementary, maybe not needed) to not do anything on lid close, change relevant params in
/etc/systemd/logind.confReddit comment
- make
rmcommand to move to trash folder but not delete - open all terminal windows at tmux
tmux attach-session -t random \; new-window ranger
- come up with solution for notes management
- rewrite mute script to iterate through all sources and mute/unmute them
- display muted status as every output is muted
- complete deletion script of marked photos in nsxiv
- preinstall coc extensions in a setup script, which is useful for docker environments; begin here and here