Skip to content

linux-dev/workstation-v0: install Albert (Fedora) and require it on GNOME#31

Open
mdheller wants to merge 5 commits intofeat/linux-dev-workstation-v0-albert-autostartfrom
feat/linux-dev-workstation-v0-albert-install
Open

linux-dev/workstation-v0: install Albert (Fedora) and require it on GNOME#31
mdheller wants to merge 5 commits intofeat/linux-dev-workstation-v0-albert-autostartfrom
feat/linux-dev-workstation-v0-albert-install

Conversation

@mdheller
Copy link
Copy Markdown
Member

STACKED on PR #29 (base: feat/linux-dev-workstation-v0-albert-autostart).

Adds an Albert installation lane for GNOME deployments and makes Albert a hard requirement when GNOME is detected.

Changes:

  • profiles/linux-dev/workstation-v0/gnome/albert-install.sh installs albert via dnf/rpm-ostree on Fedora (best-effort).
  • Installer calls the install script before wiring hotkey/autostart.
  • Doctor requires albert when GNOME is detected (fails otherwise).

Notes:

  • If Fedora repos do not provide albert, the installer will warn; the doctor will fail until Albert is installed by another method.
  • Follow-up can add COPR/RPMFusion discovery or a source build lane if needed.

Copy link
Copy Markdown
Member Author

Update: added a pragmatic fallback lane for installing Albert when it is not present in native Fedora repos.

  • gnome/albert-install.sh now:
    1. tries native repos (dnf / rpm-ostree) first,
    2. if still missing, adds the OBS repo for home:manuelschneid3r and retries.

This is an explicit trust expansion (third-party RPM repo). The script keeps it transparent and best-effort, and still warns if Albert cannot be found.

Next: if we want to avoid third-party RPM repos by default, we can gate this fallback behind an env var (e.g. SOURCEOS_ALLOW_THIRDPARTY_REPOS=1) and make the default path “print instructions” only.

Copy link
Copy Markdown
Member Author

Update: OBS fallback is now gated.

gnome/albert-install.sh will only add the third-party OBS repo if:

SOURCEOS_ALLOW_THIRDPARTY_REPOS=1

Otherwise it prints explicit instructions (including the exact .repo URL) and exits nonzero so doctor continues to signal the workstation is incomplete.

This preserves the security posture: third-party repo enablement is an explicit, auditable choice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant