Go to file
Amir Alexander Abdelbaki f500dd550e feat(hyprdrive,hyprlua): vertical mixer meters with the live peak column inside the fill
The per-channel volume meters are now vertical faders (Gtk.Scale, inverted so
loud is up) instead of horizontal sliders, and the live peak indicator moved
out of its own bar above the card into the meter itself: a narrow violet
column Cairo-drawn inside the trough, so one glance reads both "what the
volume is set to" (the fill) and "what is actually reaching the mix" (the
column inside it).

  - ui/peakbar.py is a DrawingArea rather than a Gtk.LevelBar: it has to grow
    bottom-to-top over the same span as the scale's highlight, minus the
    half-slider inset, and it sits in a Gtk.Overlay with can_target=False so
    the scale underneath still gets every click and drag.
  - ui/meter.py draws the value as its own label and drops the 100% mark;
    either one would push the trough off-centre under the overlaid column.
    The channel label is always appended (empty for mono) so a lone meter and
    a split L/R pair keep the same trough height inside the card's stack.
  - ui/card_base.py fans one peak monitor out to every meter of the card —
    parec reports one mixed level per target, not a per-channel one.
  - The trough's empty portion is transparent now (an idle meter and a silent
    monitor both read as "nothing here"), and supersonic-booster's fill gets
    the suite's emitted-magenta glow. Both stylesheets re-assert the
    transparent background at class specificity: the CyberQueer theme's
    `* { background-color: #1a1a1a }` was otherwise painting a dark stripe
    straight through the fill where the peak column sits.

hyprlua's audio-panel is regenerated via regen-audio-panel.sh; its plain
stylesheet stays flat and glow-free by design, with @accent as the fill.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-29 18:22:52 +02:00
alot fix(alot): restore esc = exit in search mode, add / = refineprompt 2026-05-26 13:31:22 +02:00
clamav chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
desktopenvs feat(hyprdrive,hyprlua): vertical mixer meters with the live peak column inside the fill 2026-07-29 18:22:52 +02:00
docs feat(nvim): auto-quit when only NERDTree/dadbod/Claude Code remain 2026-07-23 11:31:59 +02:00
etc-greetd style(greetd): restyle ReGreet login as Cosmonaut Shell 2026-07-21 20:52:32 +02:00
etc-lightdm feat(greeter): switch to greetd+ReGreet (Wayland), fix FIDO/scaling/wallpaper 2026-07-04 03:16:12 +02:00
etc-systemd-sleep feat(hyprlua): add orbit-menu radial power/utility menu 2026-07-17 09:51:02 +02:00
git amssh now themed 2026-05-11 13:26:02 +02:00
gtk-themes/cyberqueer feat(qt,gtk): overhaul theming — qt6ct style plugin, dark palette, GTK color-scheme 2026-05-19 13:43:13 +02:00
micro cleanup: archive deprecated configs, remove logs and merge artifacts 2026-05-08 10:13:12 +02:00
notes renamed old doc -> notes 2026-05-18 15:49:38 +02:00
nvim feat(nvim): auto-quit when only NERDTree/dadbod/Claude Code remain 2026-07-23 11:31:59 +02:00
nvim.old feat(nvim): convert config to Lua with lazy.nvim 2026-05-19 08:56:43 +02:00
qt-themes/deprecated/cyberqueer fixed theming issues 2026-05-19 14:39:29 +02:00
resources feat(plymouth): centred skull logo + boot-log tail, drop spinner 2026-07-04 03:18:44 +02:00
setup feat(hyprdrive): give vicinae its own "cosmonaut" holographic theme 2026-07-29 16:21:51 +02:00
spotify-tui added spotify tui 2024-11-20 01:12:57 +01:00
yazi yazi: remove invalid \$schema key from keymap.toml 2026-05-12 12:48:38 +02:00
.bashrc feat(archiso+branding): rebrand to m-archy, ship fastfetch logo and os-release 2026-06-26 09:50:39 +02:00
.gitignore added nohup.out to gitignore 2026-07-06 10:57:54 +02:00
.vimrc chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
.zshrc feat(archiso+branding): rebrand to m-archy, ship fastfetch logo and os-release 2026-06-26 09:50:39 +02:00
apply-theme.sh feat(hyprdrive): give vicinae its own "cosmonaut" holographic theme 2026-07-29 16:21:51 +02:00
colors.conf chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
create-webapp.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
decrypt.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
encrypt.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
etc-ly-config.ini we switching to ly 2026-02-12 10:35:05 +01:00
hyprdrive.md feat(hyprdrive): add hyprdrive DE with full Cosmonaut Shell suite 2026-07-17 15:28:07 +02:00
readme.md refactor(setup): consolidate build/deploy tooling under setup/tools; docs 2026-07-02 13:09:18 +02:00
readme.md.old docs: replace readme with cliff notes and links to full docs 2026-05-18 16:00:30 +02:00
setup-creds-missing.sh chmods 2026-06-01 15:37:40 +02:00
starship.toml reverted starship config because claude fucked it up 2026-06-25 14:11:14 +02:00
sysupdate.sh feat(hyprdrive): add hyprdrive DE with full Cosmonaut Shell suite 2026-07-17 15:28:07 +02:00
update-aur-onebyone.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
update.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
wgq-projekt.sh added school project vpn-connect script 2026-06-09 11:05:52 +02:00
zshplugins.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00

readme.md

M-Archy Dotfiles

Arch Linux · Hyprland · Wayland · CyberQueer

Production-grade Arch Linux config for network administration, development, and gaming.


Quick Start

git clone https://git.abdelbaki.eu/The_miro/Dotfiles.git ~/Dotfiles
bash ~/Dotfiles/setup/tui-install.sh

The TUI installer covers: packages, desktop environment, optional apps, and colour palette. To add modules to an existing system: bash ~/Dotfiles/setup/install-modules.sh


Cliff Notes

  • Single source of truth for colours — edit colors.conf, run apply-theme.sh to propagate everywhere.
  • Answerfile — generate with setup/tools/generate-answerfile.sh, place at /answerfile.json for a fully automated install. Passwords are never stored in it.
  • Hostname uniqueness — the MAC address of the primary NIC is appended automatically when an answerfile hostname is set (myhostmyhost-aabbccddee11).
  • LUKS encryption — backup key is auto-generated from /dev/urandom, enrolled in a second LUKS slot, written to /_LUKS_BACKUP_KEY (root-only, inside the encrypted container). Collected by Ansible and stored on the SMB ansipa-luks-keys share (KeyAdmin-only read access).
  • Custom ISOsetup/archiso/ builds a live USB that can embed a pre-baked answerfile for zero-touch deployment. The live environment also includes a System Reset mode that reinstalls the root subvolume while preserving home data and FIDO2 auth keys.
  • FreeIPA + Keycloak + Samba containersetup/modules/FreeipaAnsible/image/ ships a single docker compose up stack: FreeIPA for identity, Keycloak for OIDC, and Samba for scan-result and LUKS-key SMB shares. Host-group-driven policies (binary blocking, daemon enable/disable, daily scans, alert delivery) are enforced on enrolled clients every 30 minutes via Ansible-deployed timers.
  • Modular — core, shell, services, and desktop are independent components; pick only what you need.

Documentation

Full docs live in docs/md/ (Markdown) and docs/html/ (rendered).

Topic Markdown HTML
Overview & repo layout index.md index.html
Installation (TUI, answerfile, ISO) installation.md installation.html
Hyprland desktop hyprland.md hyprland.html
Theming & CyberQueer palette theming.md theming.html
Optional modules & app catalogue modules.md modules.html
Custom Archiso builder archiso.md archiso.html
FreeIPA, Ansible, Keycloak & SMB freeipa-ansible.md freeipa-ansible.html
Editors (Neovim, Micro, Yazi) editors.md editors.html
Utilities (encrypt, ClamAV, updates) utilities.md utilities.html

The old readme is preserved at readme.md.old.