feat(linux): add host-runtime distribution pipeline - #33
Merged
Conversation
Build and verify compact host-runtime payloads with lifecycle installation and release signing support. Add disposable Hyprland, KDE, and GNOME profiles that install into /opt and validate compositor startup.
Configure supervised greeter startup for Plasma Login Manager, greetd, and LightDM while keeping each greeter authoritative. Add clean VM coverage, installer cleanup, and documentation for the validated managers.
Publish SHA256SUMS with release assets and verify downloads against it without managing signing keys. Document that checksums detect corruption but do not authenticate the publisher.
Preserve the unified release builder while incorporating the Windows bootstrap and Linux setup fixes from main.
Move the distribution entry point under packaging and update its callers.
Prevent self-locking upgrades, reject unusable rollbacks and mismatched release tags, and centralize greeter adapter behavior. Document manual visible-screen VM acceptance and known GNOME limitations, with regression coverage.
Reject non-regular archive members, preserve the source install user, and recreate writable VM state before provisioning. Remove generated attribution headers and document the corrected workflows.
Describe setup and status as configuration operations, hide the internal greeter command from public help, and state what status does not test.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/optinstallation, SSH diagnostics, permission setup, and desktop startup.axidev-osk-windows-install.ps1in the unified release assets and checksum manifest.Architecture
The payload contains Axidev OSK,
axidev_io, the launcher, resources, metadata, and licenses. Desktop Qt libraries remain owned by each distribution.VM provisioning uses the lifecycle installer. The temporary host source is unmounted before reboot, and the application runs from
/opt/axidev-osk.Hyprland starts the installed launcher through its compositor configuration. KDE and GNOME use the CLI-managed XDG autostart entry.
Test Credentials
The VM profiles use the public test account
axidevwith passwordaxidev. The committed SSH key is deliberately public and only supports disposable local test machines.Verification
--select=F,E9,W6.git diff --checkpassed.