Collection of dotfiles and setup advices that suite my particular usecase. YMMV.
Installation requires thoughtbot/rcm package.
- After clonning into
.dotfiles
like this:git clone --recurse-submodules https://github.com/ratijas/dotfiles $HOME/.dotfiles
, - run twice
rcup -v
:- first time it installs
.rcrc
config according to hostname, - second time it acts according to parameters in
.rcrc
.
- first time it installs
All dependencies are optional so far.
- bat: A cat(1) clone with wings.
- fd: A simple, fast and user-friendly alternative to 'find'.
- fzf: A command-line fuzzy finder.
- lf: Terminal file manager.
- powerlevel10k: A Zsh theme.
- zsh-completions: Additional completion definitions for Zsh.
- zsh-syntax-highlighting: Fish shell-like syntax highlighting for Zsh.
Some dependencies are vendored, i.e. copy-pasted from their repositories.
It is possible to update some of them using git subtree
commands.
- ZSH-z: Jump quickly to directories that you have visited "frecently."
git subtree pull --prefix=tag-zsh/config/zsh/zshrc.d/50.plugins.d/zsh-z --squash git@github.com:agkozak/zsh-z.git master
The hard way. Works for any locally cloned repo, not only for oh-my-zsh. If prefix is not needed (i.e. the whole repository is a plugin), then local cloning and subtree splitting should be omitted.
cd path/to/ohmyzsh
grt # optionally, cd to git root
local plugin commit
plugin=gitignore # for example
commit=$( git subtree split -P plugins/$plugin )
cd ~/.dotfiles
git subtree add --prefix=tag-zsh/config/zsh/zshrc.d/50.plugins.d/$plugin --squash path/to/ohmyzsh $commit
- git-credential-keepassxc: Helper that allows Git (and shell scripts) to use KeePassXC as credential store.
In default configuration, kernel fails to detect proper options for HD Audio driver, snd-hda-intel
. Symptoms are: constant high-pitched noise in headset, burst of low-pitched noise after powering up, waking up, or just using audio output after long silence.
Linux kernel used to work around autodetection bugs by giving users an option to specify a "model" manually. It actually loads a set of fix-ups to apply when loading a driver. For implementation details, see patch_realtek.c
.
For ALC668, use model alc668-headset
. It fixes the high-pitch noise, at least until first hibernation. Install from from tag-workarounds this file:
- /etc/modprobe.d/alsa.conf
Resources:
- Linux Sound Subsystem Documentation
- HD-Audio Codec-Specific Models
- /kernel/linux/sound/pci/hda/patch_realtek.c
The adapter should be recognized by the
r8169
module. However, with some chip revisions the connection may go off and on all the time. The alternative r8168 should be used for a reliable connection in this case. Blacklistr8169
, if r8168 is not automatically loaded by udev, see Kernel modules#Automatic module loading with systemd.
Even r8168 is not perfect: my ethernet port voids out after waking up from suspend. Solved it by reloading the kernel module via systemd sleep hook. Install these files from tag-workarounds:
- /usr/bin/r8168-reload.sh
- /usr/lib/systemd/system-sleep
Resources:
Some useful tips about login manager.
How to enable trackpad tap to click in SDDM login page?
sudoedit /etc/X11/xorg.conf.d/20-touchpad.conf
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
Option "Tapping" "on"
Option "NaturalScrolling" "on"
Option "MiddleEmulation" "on"
Option "DisableWhileTyping" "on"
EndSection
sudoedit /etc/sddm.conf
[X11]
#EnableHiDPI=true
ServerArguments=-nolisten tcp -dpi 192