---
title: LUKS SDDM KWallet documentation targets
type: note
permalink: dotfiles/research/luks-sddm-kwallet-documentation-targets
tags:
- sddm
- kwallet
- luks
- pam
- documentation
- edit-points
---

# LUKS SDDM KWallet documentation targets

## Summary

User decision: **document exact commands only** (not manage `/etc` files in the repo). This means the deliverable is a new documentation file in the dotfiles repo, not new symlinks or deploy scripts.

## Repo documentation conventions found

- [fact] **No README.md, SETUP.md, INSTALL.md, or docs/ directory exists** — the dotfiles repo has no human-facing setup documentation at all
- [fact] The only markdown files tracked in git are: `.memory/decisions.md`, `.memory/knowledge.md`, `.memory/research/opencode-architecture.md` — all are basic-memory agent-facing notes, not user-facing docs
- [fact] `.config/opencode/AGENTS.md` is the OpenCode agent instruction file (global AI config) — NOT a per-feature setup doc
- [convention] There is no established convention for "machine setup" documentation in this repo — **any new docs file will establish the pattern**

## Best file location for command documentation

### Option A (Recommended): `README.md` at repo root
- **Path:** `/home/alex/dotfiles/README.md`
- **Rationale:** Establishes the first user-facing doc for the repo; natural home for setup and system integration notes; visible on any git host
- **Section to add:** `## System Setup: KWallet + SDDM PAM integration` with step-by-step commands

### Option B: `.memory/plans/luks-sddm-kwallet-login-integration.md` (append)
- **Path:** `/home/alex/dotfiles/.memory/plans/luks-sddm-kwallet-login-integration.md`
- **Rationale:** Already tracks this feature; append a `## Exact commands` section
- **Downside:** `.memory/` files are agent-facing, not user-facing; commands buried in plan notes are harder to find later

### Option C: New dedicated file `SETUP-auth.md` or `docs/auth-setup.md`
- **Path:** `/home/alex/dotfiles/SETUP-auth.md`
- **Rationale:** Keeps system-setup docs separate from repo README
- **Downside:** Fragments documentation without an established convention

## What the documentation must cover (per plan + discovery)

Commands for:
1. `pacman -S kwallet-pam` OR AUR install of `kwallet-pam` (provides `pam_kwallet6.so`)
2. Edit `/etc/pam.d/sddm` — replace `pam_kwallet5.so` with `pam_kwallet6.so` (auth + session lines)
3. Edit `/etc/pam.d/sddm-autologin` — same replacement (if needed)
4. Create `/etc/sddm.conf.d/` directory if missing
5. Initialize KWallet — `kwalletd6` first-run or `kwallet-query` commands
6. Verify: `systemctl restart sddm` and login test

## Risks relevant to documentation

- [risk] `kwallet-pam` for KF6 may be AUR-only on Arch — exact package name needs verification before documenting
- [risk] `/etc/pam.d/` edits require root; if documented as copy-paste commands, must be prefixed with `sudo`
- [risk] SDDM autologin is NOT configured and should NOT be added — the password-login model was chosen; docs must not inadvertently suggest autologin setup
- [risk] A new `README.md` will be the first user-facing documentation and will set precedent — scope it carefully to avoid bloat

## Relations
- related_to [[LUKS SDDM KWallet discovery]]
- related_to [[luks-sddm-kwallet-login-integration]]
