# TODO Plans for the future of this dotfiles. ## General - [ ] Add [GuixWL](https://guixwl) workflow - [ ] Disk layout declarative configuration using [disko](https://github.com/nix-community/disko) - Update README instruction to include AlpineLinux installation ## System ### Configuration - [ ] /etc/security/access.conf - [ ] Filesystem snapshot: - [ ] zrepl (rootfs=zfs) - [ ] Root on tmpfs - [ ] Filesystem backup (I don't have spare hard drives -_- so not supported for now): - [ ] Local incremental backups (to spare disk) - [ ] Remote backups - [ ] incron - [ ] bees - [ ] kea as another option for dhcp client - [ ] booster and dracut options for initramfs_generator - [ ] `i915.enable_guc=3` (/etc/modprobe.d/kms.conf) - [ ] turnstile as an alternative to pam-rundir/elogind ### Cosmetic - [ ] Packer + Terraform / Pulumi (zfs + btrfs VMs) for testing the playbook ### Just in case I forget - [ ] nftables with rootful podman () - [ ] Write docs about AlpineLinux installation: - [ ] BTRFS on LUKS (no encrypted /boot) / ZFS on root - [ ] Bootloader configuration: - [ ] limine / grub (BTRFS) - [ ] gummyboot (a.k.a systemd-boot) / stubbyboot / direct efistub (ZFS) - [ ] [APK post-commit hook](https://ptrcnull.me/posts/alpine-commit-hooks/) in the case of gummyboot, stubbyboot, efistub and limine - [ ] EFI secure boot (also sign fwupd efi binary) - [ ] Add EFI entries for EFI shell and fwupd - [ ] Common kernel parameters: `init_on_free=1 page_alloc.shuffle=1 lockdown=integrity quiet` - [ ] ZFS: `root=ZFS=rpool/ROOT/alpine` - [ ] BTRFS: `modules=sd-mod,usb-storage,btrfs,nvme rootfstype=btrfs cryptroot=UUID=<...> cryptdm=alpine` ## Dotfiles ### Software - [ ] ~~[wayout](https://git.sr.ht/~proycon/wayout)~~ - [x] ~~Use [bubblewrap](https://github.com/containers/bubblewrap) for some applications~~ ==> replace with rootless [podman](https://podman.io) and [apptainer](https://apptainer.org) - [ ] [eww](https://github.com/elkowar/eww) - [ ] ~~[swhkd](https://github.com/waycrate/swhkd)~~ - [ ] [senpai](https://git.sr.ht/~taiite/senpai) - [ ] [ripgrep](https://github.com/BurntSushi/ripgrep) -> [ugrep](https://github.com/Genivia/ugrep) - [ ] [vieb](https://github.com/Jelmerro/Vieb) - [ ] ~~[wolfssh](https://www.wolfssl.com)~~ - [ ] [AutoSub](https://github.com/abhirooptalasila/AutoSub) - [ ] ~~[fnm](https://github.com/Schniz/fnm)~~ - [ ] ~~[asdf](https://github.com/asdf-vm/asdf)~~ - [ ] [userspace-tablet-driver](https://github.com/kurikaesu/userspace-tablet-driver-daemon) for my XP-PEN Artist 16 Pro - [ ] [lite-xl](https://github.com/lite-xl/lite-xl) / helix / kakoune - [ ] Wayland compositors: [japokwm](https://github.com/werererer/japokwm), [dwl](https://github.com/djpohly/dwl), [labwc](https://github.com/labwc/labwc), [vivarium](https://github.com/inclement/vivarium), [qtile](https://github.com/qtile/qtile) (also revaluate [hikari](https://hub.darcs.net/raichoo/hikari) and [wayfire](https://wayfire.org)) - [x] ~~[tremc](https://github.com/tremc/tremc) / [rtorrent](https://github.com/rakshasa/rtorrent/)~~ ==> I use [qbt](https://github.com/ludviglundgren/qbittorrent-cli) with qbittorrent-nox daemon now - [ ] Other terminals (contour, wezterm) - [ ] CopyQ (config, themes + superd service + clipboard menu script) - [ ] mangal - [ ] musikcube - [ ] vimiv-qt - [ ] mpd-mpris (as an alternative to mpDris2) ### Cosmetic - [ ] GTK/Icons/Cursor theme, Sarasa font bootstrapping - [ ] Waybar config file for River - [ ] [catppuccin](https://github.com/catppuccin/catppuccin) theme - [ ] Remove `pipewire-pulse` entirely (is there alternative to pavucontrol for pipewire??) - [ ] ~~qBittorrent themes~~ - [ ] [vivid](https://github.com/sharkdp/vivid) themes - [ ] waybar: pulseaudio module -> wireplumber module (wait for more features, e.g. scrolling) - [ ] html2text, html2org - [ ] Build podman container images with ansible-bender or stacker - [ ] Add `target-determinator` and `aspect-cli` to packages (or containers, with underlying `bazel`) ### Sandboxing - [ ] Dockerfile for [animdl](https://github.com/justfoolingaround/animdl) + mpv - [ ] podman rootless with dbus access (without ANONYMOUS authentication) + socket permissions (wayland / dbus/ pipewire / pulseaudio) in container (777 is no good)