Configs/scripts/etc as part of my workstation
Find a file
2024-08-24 21:23:47 -05:00
outerheaven.init3.home kitty: use standard (pro) color profile 2024-08-24 21:23:47 -05:00
.gitignore cava: init 2024-08-24 18:33:45 -05:00
README.md readme: quick links 2024-06-22 11:49:21 -05:00
update.sh update.sh: new files 2024-08-24 18:31:46 -05:00

dot

Yet another dotfiles repo! Files are organized by hostname and maintained by update.sh

A relatively recent Linux desktop is assumed throughout; PRs are always welcome! I use Fedora btw :)

.config/system:

Notable entries

i3/Sway autostarts

Script: ~/.config/sway/scripts/startup.py
Config: ~/.config/autostart-i3ipc.yml

Time/date aware (conditional) autostart manager for Sway/i3 window managers.

Should run on-login -- i3/sway having a config entry:

~ $ cat ~/.config/sway/config
# Config for sway
#
# See `man 5 sway` for a complete reference.
# [...]
exec 'python3 ~/.config/sway/scripts/startup.py'

Use exec as shown; avoid exec_always. Your 'wanted' entries will repeat, otherwise, if reloading i3/Sway.

Example autostart-i3ipc.yml:

---
autostarts:
  pre: []     # *always* run, before/blocking others. ie: backup
  weekend: [] # blocking Sat/Sun. after 'pre'/before 'common'. ie: backup tier 2
  common:     # things started every day, after 'pre' - non-blocking
    - 'firefox-wayland'
    - 'foot'
  work: []    # does not execute on weekends; only if within working day/hours

Touch ~/.vacation to skip work autostarts; rm when work may continue :)

Working days are assumed Monday through Friday. Hours are between 8 AM and 4 PM. Defined in the WorkTime class.


homedir backup

Script: ~/.local/bin/backup_home
Config: ~/.restic_excludes

This will back up $HOME (minus exclusions, of course!). Part of the autostarts.

The important parts are managed by others:

  • restic: performs the backup to $BACKUP_DEST or /raid1-evos/backups/restic (if unset)
  • pass: stores the passphrase given to restic; confirmation on hardware token

The exclusions are highly personalized, and as such, not included. Wants shell patterns split by lines.