https://github.com/franzos/dotfiles
Guix dotflines
https://github.com/franzos/dotfiles
dotfiles guix guix-configuration guix-home
Last synced: 4 months ago
JSON representation
Guix dotflines
- Host: GitHub
- URL: https://github.com/franzos/dotfiles
- Owner: franzos
- Created: 2024-01-06T22:08:00.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-11-06T15:32:24.000Z (7 months ago)
- Last Synced: 2025-11-06T17:26:52.003Z (7 months ago)
- Topics: dotfiles, guix, guix-configuration, guix-home
- Language: Scheme
- Homepage:
- Size: 4.87 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-guix - franzos/dotfiles
README
My .dotfiles; A work in progress.
## System Configuration
```bash
su - root
cd /home/franz/dotfiles && guix system -L system reconfigure system/thinkpad.scm
cd /home/franz/dotfiles && guix system -L system reconfigure system/framework.scm
```
Debug
```bash
cd /home/franz/dotfiles && guix repl -L system system/thinkpad.scm
```
## Home Configuration
```bash
cd /home/franz/dotfiles/home
guix home reconfigure home.scm
```
## Mail
```bash
echo "Subject: Hi" | msmtp -a gofranz.com mail@gofranz.com -v
```
## Themes
Available: `ibm-5151`, `macos-classic`
Change theme in `home/home.scm`:
```scheme
(define current-theme "ibm-5151")
```
To add a new theme, create `home/themes//` with:
- `foot.ini`, `sway-colors`, `waybar-light.css`, `waybar-dark.css`
- `gtk-settings-light.ini`, `gtk-settings-dark.ini`
- Darkman scripts: `foot-dark`, `foot-light`, `sway-dark`, `sway-light`, `waybar-dark`, `waybar-light`, `dunst-dark`, `dunst-light`, `vscode-dark`, `vscode-light`, `gtk-dark`, `gtk-light`
## Features
- **Darkman** - Automatic dark/light theme switching at sunrise/sunset (toggle: `darkman toggle` or Mod+T)
- **Sway** (Wayland) with greetd/wlgreet, waybar, swaylock
- **Mail stack** - aerc + isync + msmtp + dovecot (local IMAP)
- **Calendar/Contacts** - khal + pimsync (auto-sync every 10min)
- **Rootless Podman** - Container runtime
- **Mullvad VPN** - VPN service
- **broot** - File navigator with multi-scheme theming
- **Unattended upgrades** - Daily at 12:00 (pantherx + small-guix channels)
- **LUKS encryption** - Full disk encryption
- **TLP** - Power management with custom AC/battery profiles
- **ZRAM** - Compressed swap (8G thinkpad, 24G framework)
- **Chrome** with Hardware Acceleration
- **Hibernation** Hibernate to disk after 60m standby
### Security
- Smart card support (pcscd)
- lxqt-policykit agent
- block-facebook-hosts
- Yubikey challenge-response for sudo
- Fingerprint login (greetd, swaylock)
### Regulatory
- Set WiFi country code to `PT` (Portugal). Check with `iw reg get`.
#### Fingerprint Setup (Login)
Enroll:
```bash
fprintd-enroll
```
Verify:
```bash
fprintd-verify
```
**Swaylock**: Press Enter, then scan fingerprint. Password login doesn't work due to [swaywm/swaylock#61](https://github.com/swaywm/swaylock/issues/61).
#### Yubikey Setup (Challenge-Response for sudo)
Enable slot 2:
```bash
guix shell python-yubikey-manager -- ykman config usb --enable OTP
```
Program slot 2:
```bash
# openssl rand -hex 20
guix shell python-yubikey-manager -- ykman otp chalresp --touch 2
```
Generate challenge file (once, with any key):
```bash
guix shell yubico-pam -- ykpamcfg -2 -v
```
### Hardware-specific
- **Framework**: AMD GPU, fw-fanctrl
- **Thinkpad**: Intel i915, SSH server, backlight udev rules
Audio: I'm using Nothing Ear (Bluetooth) for crystal clear music and video calls - works perfectly.