On Thu, 05 Sep 2024 at 11:44:31 +0100, Simon McVittie wrote:
> mozjs128 fails several tests on armel (#1080000) because armel's
> lack of atomic integer operations results in [badness]

Deja vu: we had a very similar situation almost exactly 2 years ago,
when we were integrating the GNOME release that ended up being shipped
in bookworm. (#1018076)

For the 2022 version of this transition, ARM porters were able to get
mozjs102 to work, but I would prefer not to make this a blocker for
getting GNOME 47 into testing, and it seems like a waste of the porters'
valuable time to be putting effort into enabling something that in any
case is unlikely to be practically useful.

> Last time we had to remove gjs from an architecture (last time it was
> s390x), we found that the release infrastructure would not allow the
> removal of gnome-shell to migrate to testing

When we discussed this in 2022, Paul Gevers said that the release team
could probably disable this check and allow task-gnome-desktop to be
uninstallable on armel...

> Previously we worked around this by making
> the gnome-core metapackage not actually install GNOME on the affected
> architecture, but instead installing GNOME Flashback; this was a bit of a
> lie

... which would make this workaround unnecessary.

I believe this means that when gjs 1.81.x/1.82.x is otherwise ready,
the plan will be similar to
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1018076#86>:

0. Adapt some packages to stop depending on gjs or gnome-shell on armel:
    - gdm3 - GNOME team can do this
    - libportal - GNOME team can do this
    - libsecret - GNOME team can do this
    - ostree - GNOME team can do this
    - (glade is already compiled without gjs on armel since 2022)
    - (ibus-tests is already not shipped on armel since 2022)
    - (libguestfs is already compiled without gjs on armel since 2022)
1. Wait for release team ack
2. Upload gjs/experimental and packages from (0.) to unstable
3. Adapt meta-gnome3 so gnome-core and gnome are only built on
   architectures that have a working gjs
4. Remove only these armel *binaries* (as NBS), leaving the rest of their
   source packages intact:
   - gdm3 (from src:gdm3)
   - gnome-core (from src:meta-gnome3)
   - gnome (from src:meta-gnome3)
5. Remove all binaries of these source packages from armel:
   - eos-sdk
   - foliate
   - gjs
   - gnome-characters
   - gnome-maps
   - gnome-shell
   - gnome-shell-extension-desktop-icons-ng
   - gnome-shell-extension-gsconnect
   - gnome-shell-extension-manager
   - gnome-shell-mailnag
   - gnome-shell-pomodoro
   - gnome-sound-recorder
   - gnome-sushi
   - gnome-weather
   - gpaste
   - polari
6. Release team will need to force through the transition by ignoring the
   "all task packages are installable" check on armel, because
   task-gnome-desktop will now be uninstallable on armel

Does that sound right?

(I've just uploaded the gjs 1.81.90 release candidate to experimental.)

Thanks,
    smcv

Reply via email to