Renames the package and all artifacts to authforge to drop the
distro-specific prefix, since the roadmap targets Ubuntu + Debian +
KDE + eventually Fedora (option C in the design).
- deb packages: authforge, authforge-{daemon,pam,cli,gui,gnome-integration}
- binaries: authforged, authforgectl, authforge (GUI)
- D-Bus name: io.dangerousthings.AuthForge
- PAM module: pam_authforge_pending.so
- Paths: /etc/authforge/, /var/lib/authforge/, /usr/share/pam-configs/authforge
- PPA: ppa:dangerousthings/authforge
Filesystem path /home/work/VSCodeProjects/ubuntu_fido/ left as-is for
historical reference; can rename later via git mv at the dir level.
Verified: cargo build/test/clippy/fmt clean, pam builds, gui builds,
all 5 debs produced.
43 lines
1.1 KiB
Markdown
43 lines
1.1 KiB
Markdown
# Building authforge from source
|
|
|
|
## System dependencies
|
|
|
|
```bash
|
|
sudo apt-get update
|
|
sudo apt-get install -y \
|
|
build-essential pkg-config \
|
|
libpam0g-dev libgtk-4-dev libadwaita-1-dev libfido2-dev \
|
|
debhelper devscripts lintian
|
|
```
|
|
|
|
Rust toolchain: stable (1.78 minimum). Install via [rustup](https://rustup.rs).
|
|
|
|
## Build steps
|
|
|
|
```bash
|
|
# Pure-Rust crates (daemon, CLI, common)
|
|
cargo build --release
|
|
|
|
# GUI (requires libgtk-4-dev + libadwaita-1-dev)
|
|
cargo build -p authforge-gui --release
|
|
|
|
# PAM module (requires libpam0g-dev)
|
|
make -C pam
|
|
|
|
# Full deb build (requires all of the above + debhelper)
|
|
dpkg-buildpackage -us -uc -b
|
|
# Output: ../authforge*.deb
|
|
```
|
|
|
|
## Tests
|
|
|
|
```bash
|
|
cargo test --workspace --exclude authforge-gui
|
|
```
|
|
|
|
The GUI crate has no automated tests in v1; manual smoke tests are documented in [docs/plans/2026-04-26-authforge-design.md](plans/2026-04-26-authforge-design.md#testing-strategy).
|
|
|
|
## Phase 0 status
|
|
|
|
Repository scaffolding is complete (tag `v0.1.0-scaffolding`, then renamed `ubuntu-fido` → `authforge`). Subsequent phases per [docs/plans/2026-04-26-authforge-implementation.md](plans/2026-04-26-authforge-implementation.md).
|