Repository navigation
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
dotfiles -- mb6ockatf's configuration files
===========================================
mb6ockatf's configuration files, installed into $HOME with GNU stow.
Install
-------
make install link everything into $HOME, enable the git hooks
make dry-run show what install would do
make uninstall remove the links
make check syntax-check shell files, scan for personal data
make lint shellcheck the shell files
make man regenerate the manual pages from man/*.m4
or by hand:
stow -t $HOME -R .
stow -t $HOME -D .
What is not linked
------------------
.stow-local-ignore keeps these out of $HOME: README, NEWS, TODO,
Makefile, man/, system/, .githooks/, .github/, archive/, .shellcheckrc
and *.bak backups.
man/ holds the m4 sources of the manual pages. Edit those, not the
generated pages under .local/share/man; make man (and make install)
regenerates them.
system/ holds root-owned files that live outside $HOME, laid out like
their paths under /. make system installs them with sudo (stow does
not touch them):
system/usr/local/sbin/nala-predownload
system/etc/cron.d/nala-predownload
Every 15 minutes, cron checks whether the laptop has been on AC
and awake for 8 hours without a break, last downloaded at least
8 hours ago, and can reach the first apt mirror. If so, it runs
"nala upgrade --full --download-only" at idle priority, so the
next upgrade only installs. Log: /var/log/nala-predownload.log.
system/etc/cron.weekly/fstrim
Trims the SSD weekly through anacron (there is no systemd
fstrim timer here). Log: /var/log/fstrim.log.
system/etc/sysctl.d/90-zram.conf
vm.swappiness 180 and vm.page-cluster 0, which suit zram.
Docker does not start at boot (update-rc.d docker disable); start it
with "sudo service docker start" when needed.
archive/ holds configs for software that is no longer installed (NixOS,
pacman, PowerShell, fish, kakoune, csh, Tor Browser, neofetch, htop,
nano, GIMP 2.6, and vim and vi, replaced by neovim). Move a file back
out of archive/ and restow to use it again.
Generated files stay untracked: ~/.fehbg (rewritten by feh). The
neovim vim-stats plugin keeps its data in ~/.local/state/nvim/vim-stats.
Private and machine-specific settings
-------------------------------------
Nothing personal belongs in this repository. Put private or
machine-specific settings in ~/.profile.local, which ~/.profile sources
if it exists. It may call path_prepend, for example:
path_prepend "${HOME}/.local/opt/gcc-16/bin"
export SOME_HOST=...
Your git name and email go in ~/.gitconfig.local, which the tracked
~/.gitconfig includes:
[user]
name = ...
email = ...
.githooks/pre-commit refuses commits that add email addresses, IPv4
addresses, ssh logins, private keys or credentials. Harmless matches go
in .githooks/allowlist.
GitHub
------
.github/workflows/check.yml runs make check, make lint and a stow
install into an empty directory on every push.
.github/workflows/gitleaks.yml scans the whole history for secrets.
.github/dependabot.yml opens a monthly pull request for the workflow
actions.
Shell start-up
--------------
~/.profile PATH and ~/.profile.local; POSIX sh, safe to re-run
~/.bash_profile sources ~/.profile and ~/.bashrc
~/.bashrc sources ~/.profile, then the interactive settings,
~/.bash_aliases and ~/.config/functions.sh
~/.xsessionrc read by lightdm (Debian Xsession); sources ~/.profile
and ~/.xprofile
~/.xprofile X settings: compose key, Xresources
~/.xinitrc sources ~/.xprofile, then starts bspwm (startx)
~/.local/bin/clean-history tidies ~/.bash_history with
~/.config/clean_history.sed. It is not run automatically.
Credits
-------
@adi1090x's configuration setup https://github.com/adi1090x/rofi
Copying
-------
Copyright (C) 2022-2026 mb6ockatf
These files are free software: you can redistribute them and/or modify
them under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or (at
your option) any later version, except where a file says otherwise.
See COPYING.