Skip to content

fix(gnome-remote-desktop): remove dependency on opus to drop it#17120

Open
binujp wants to merge 1 commit into
tomls/base/mainfrom
bphilip/opus-gnome-remote-desktop-elide
Open

fix(gnome-remote-desktop): remove dependency on opus to drop it#17120
binujp wants to merge 1 commit into
tomls/base/mainfrom
bphilip/opus-gnome-remote-desktop-elide

Conversation

@binujp
Copy link
Copy Markdown
Contributor

@binujp binujp commented May 11, 2026

Force %bcond rdp to 0 to disable the RDP backend, which has a hard
dependency on opus via meson. Guard RDP-only file entries in %files
with %if %{with rdp} blocks so they are excluded when RDP is off.

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
Part of the effort to remove opus, opusfile, and mingw-opus from Azure Linux.

Copilot AI review requested due to automatic review settings May 11, 2026 05:12
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Disables the gnome-remote-desktop RDP backend in Azure Linux to remove the hard build dependency on opus, and updates packaging so RDP-only artifacts are not referenced when RDP is off.

Changes:

  • Force %bcond rdp to 0 to disable the RDP backend (and its conditional BuildRequires such as pkgconfig(opus)).
  • Guard RDP-only %files entries behind %if %{with rdp} so builds don’t fail when RDP is disabled.
  • Move gnome-remote-desktop from the unmodified inline component list to a dedicated .comp.toml, and refresh the lock fingerprint accordingly.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.

File Description
specs/g/gnome-remote-desktop/gnome-remote-desktop.spec Rendered spec updated to force-disable RDP and conditionally package RDP-only files.
base/comps/gnome-remote-desktop/gnome-remote-desktop.comp.toml Introduces overlays to enforce RDP disablement and apply conditional %files guards.
base/comps/components.toml Removes the inline gnome-remote-desktop entry now that it has a dedicated component definition file.
locks/gnome-remote-desktop.lock Updates the input-fingerprint to reflect the component definition change.

Comment on lines +148 to 152
%if %{with rdp}
%{_userunitdir}/%{systemd_unit_handover}
%{_unitdir}/%{systemd_unit_system}
%{_unitdir}/gnome-remote-desktop-configuration.service
%{_datadir}/applications/org.gnome.RemoteDesktop.Handover.desktop
[[components.gnome-remote-desktop.overlays]]
description = "Force-disable RDP backend (opus is a hard RDP dep and is not available in AZL)"
type = "spec-search-replace"
regex = '%bcond rdp %\[0%\{\?fedora\} \|\| 0%\{\?rhel\} >= 10\]'
%global tarball_version %%(echo %{version} | tr '~' '.')

%bcond rdp %[0%{?fedora} || 0%{?rhel} >= 10]
%bcond rdp 0
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If there's already a bcond, we need not do any overlay here; we can just set a without = ["rdp"] in the TOML file.

type = "spec-search-replace"
section = "%files"
regex = '%\{_libexecdir\}/gnome-remote-desktop-enable-service'
replacement = """%if %{with rdp}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These overlays take a dependency on specific knowledge that the RDP-related lines are consecutive, and that this is the first one.

I know the resulting rendered .spec looks like what we'd expect -- but the overlays now run the risk of generating unexpected results if the upstream spec happens to reorder the entries in %files.


# AZL does not ship opus. Opus is a hard meson dependency when RDP is
# enabled, so disable the RDP backend by forcing the bcond to off.
# We also guard the RDP-only file entries so %files doesn't list missing files.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This would be a bug in the upstream spec, yes? We should add it to Chris's list of changes-to-upstream.

Force %bcond rdp to 0 to disable the RDP backend, which has a hard
dependency on opus via meson. Guard RDP-only file entries in %files
with %if %{with rdp} blocks so they are excluded when RDP is off.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@binujp binujp force-pushed the bphilip/opus-gnome-remote-desktop-elide branch from f795b70 to e926cc7 Compare May 11, 2026 15:02
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.

3 participants