GNOME-only autostart entry installed to /etc/xdg/autostart/. Uses X-GNOME-Autostart-Phase=Initialization so it runs before user autostarts but after GDM hands the session off. NoDisplay=true keeps it out of the apps menu — autostart-only. Plan deviation: project uses debian/rules for installation (no debian/authforge-gui.install file exists), so the install line goes there instead. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
55 lines
2.3 KiB
Makefile
Executable File
55 lines
2.3 KiB
Makefile
Executable File
#!/usr/bin/make -f
|
|
export DH_VERBOSE = 1
|
|
export CARGO_HOME = $(CURDIR)/target/cargo-home
|
|
|
|
%:
|
|
dh $@
|
|
|
|
override_dh_auto_build:
|
|
cargo build --release --workspace
|
|
$(MAKE) -C pam
|
|
|
|
override_dh_auto_install:
|
|
# Daemon
|
|
install -D -m 0755 target/release/authforged \
|
|
debian/authforge-daemon/usr/sbin/authforged
|
|
# CLI
|
|
install -D -m 0755 target/release/authforgectl \
|
|
debian/authforge-cli/usr/bin/authforgectl
|
|
# GUI
|
|
install -D -m 0755 target/release/authforge \
|
|
debian/authforge-gui/usr/bin/authforge
|
|
install -D -m 0644 gui/data/io.dangerousthings.AuthForge.desktop \
|
|
debian/authforge-gui/usr/share/applications/io.dangerousthings.AuthForge.desktop
|
|
install -D -m 0644 gui/data/io.dangerousthings.AuthForge.svg \
|
|
debian/authforge-gui/usr/share/icons/hicolor/scalable/apps/io.dangerousthings.AuthForge.svg
|
|
# First-run autostart entry (Phase 10): runs `authforge --first-run`
|
|
# at GNOME session start; binary exits ~immediately when no pending
|
|
# flag is set, so the per-session cost is one D-Bus round-trip.
|
|
install -D -m 0644 gui/data/authforge-firstrun.desktop \
|
|
debian/authforge-gui/etc/xdg/autostart/authforge-firstrun.desktop
|
|
# PAM
|
|
$(MAKE) -C pam install DESTDIR=$(CURDIR)/debian/authforge-pam
|
|
# D-Bus activation file
|
|
install -D -m 0644 debian/io.dangerousthings.AuthForge.service \
|
|
debian/authforge-daemon/usr/share/dbus-1/system-services/io.dangerousthings.AuthForge.service
|
|
# D-Bus system policy
|
|
install -D -m 0644 debian/io.dangerousthings.AuthForge.conf \
|
|
debian/authforge-daemon/usr/share/dbus-1/system.d/io.dangerousthings.AuthForge.conf
|
|
# polkit actions
|
|
install -D -m 0644 debian/io.dangerousthings.AuthForge.policy \
|
|
debian/authforge-daemon/usr/share/polkit-1/actions/io.dangerousthings.AuthForge.policy
|
|
# systemd unit (dh_installsystemd will enable it)
|
|
install -D -m 0644 debian/authforge-daemon.service \
|
|
debian/authforge-daemon/lib/systemd/system/authforge-daemon.service
|
|
# GNOME Settings Users-panel overlay (authforge-gnome-integration)
|
|
install -D -m 0644 gnome-integration/io.dangerousthings.AuthForge.UsersPanel.desktop \
|
|
debian/authforge-gnome-integration/usr/share/applications/io.dangerousthings.AuthForge.UsersPanel.desktop
|
|
|
|
override_dh_auto_test:
|
|
cargo test --workspace --release
|
|
|
|
override_dh_auto_clean:
|
|
cargo clean
|
|
$(MAKE) -C pam clean
|