Public bug reported:
[Availability]
The package gnome-shell-ubuntu-extensions is already in Ubuntu universe.
The package gnome-shell-ubuntu-extensions build for the architectures it is
designed to work on.
It currently builds and works for architectures: all
Link to package
https://launchpad.net/ubuntu/+source/gnome-shell-ubuntu-extensions
Also all the source contents of the gnome-shell-ubuntu-extensions package are
already part of ubuntu as separated source packages at the moment:
- gnome-shell-extension-appindicator
- gnome-shell-extension-desktop-icons-ng
- gnome-shell-extension-ubuntu-tiling-assistant
- gnome-shell-extension-ubuntu-dock
[Rationale]
- The package gnome-shell-ubuntu-extensions is required in Ubuntu main to be
a dependency of ubuntu-desktop-minimal as it provides the extensions that are
required to get the ubuntu desktop experience in GNOME Shell.
- The package is meant to replace the single extensions packages that are
already in main:
- gnome-shell-extension-appindicator (MIR-Bug LP: #1712344)
- gnome-shell-extension-desktop-icons-ng (MIR-Bug LP: #1916511)
- gnome-shell-extension-tiling-assistant (MIR-Bug LP: #2007710)
- gnome-shell-extension-ubuntu-dock (MIR-Bug LP: #1711310)
- By having a single package for them we can control better the updates of
GNOME Shell and to the extensions, by making it easier if an extension may
break GNOME shell or any other extension of the set.
- The package is already a test-dependency of GNOME shell autopkgtests
- We want (ideally as part of GNOME 50 cycle) to be able to add integration
tests to all the extensions, and they need to be part of the same source
package if we want (and we do) use the upstream testing tooling.
- SRU new upstream fixes will be easier for everybody:
* We can just bump a local dependency and get the upstream fixes
* Testing a single package will allow to check how all the extensions work
together given the proposed changes
* Reviewers do not have to go through patches reviews (and to diffs on
patches), but rather to check the actual changes we're proposing
- Debian dependency system allows already something similar but requires us
to maintain many duplicated versions checks.
All binary packages built by gnome-shell-ubuntu-extensions need to be in main to
ensure that ubuntu-desktop-minimal can depend on them (it's only one at the
moment).
- The package gnome-shell-ubuntu-extensions is required in Ubuntu main no later
than Resolute Feature Freeze (or likely before).
[Security]
- No CVEs/security issues in this software in the past
https://ubuntu.com/security/cve?package=gnome-shell-ubuntu-extensions
https://ubuntu.com/security/cve?package=gnome-shell-extension-appindicator
https://ubuntu.com/security/cve?package=gnome-shell-extension-desktop-icons-ng
https://ubuntu.com/security/cve?package=gnome-shell-extension-tiling-assistant
https://ubuntu.com/security/cve?package=gnome-shell-extension-ubuntu-dock
- no `suid` or `sgid` binaries
- Packages does not open privileged ports (ports < 1024)
- Package does expose an external endpoint, but only local ones via DBus APIs
to show indicators or customize the dock icons.
- Packages does not contain extensions to security-sensitive software
- no executables in `/sbin` and `/usr/sbin`
However we do execute some JS code through gjs, in particular
* /usr/share/gnome-shell/extensions/[email protected]/app/ding.js
(limited via apparmor profile)
*
/usr/share/gnome-shell/extensions/[email protected]/app/createThumbnail.js
* /usr/share/gnome-shell/extensions/[email protected]/locationsWorker.js
In general all the code here is still security/privacy relevant since it gets
loaded by GNOME Shell in the user process of the compositor, and it can access
to the user data and could potentially read user credentials.
However such code has been already re-reviewed both during the ubuntu MIR
processes and continuously by the upstream extensions review process:
https://gjs.guide/extensions/review-guidelines/review-guidelines.html
[Quality assurance - function/usage]
- The package works well right after install
[Quality assurance - maintenance]
- The package is maintained well in Ubuntu and Upstream and does
not have too many, long-term & critical, open bugs
- Ubuntu
https://bugs.launchpad.net/ubuntu/+source/gnome-shell-ubuntu-extensions/+bug
- Ubuntu
https://bugs.launchpad.net/ubuntu/+source/gnome-shell-extension-appindicator/+bug
- Upstream
https://github.com/ubuntu/gnome-shell-extension-appindicator/issues/
- Ubuntu
https://bugs.launchpad.net/ubuntu/+source/gnome-shell-extension-desktop-icons-ng/+bug
- Upstream https://gitlab.com/smedius/desktop-icons-ng/-/issues
- Ubuntu
https://bugs.launchpad.net/ubuntu/+source/gnome-shell-extension-tiling-assistant/+bug
- Upstream https://github.com/Leleat/Tiling-Assistant/issues
- Ubuntu
https://bugs.launchpad.net/ubuntu/+source/gnome-shell-extension-ubuntu-dock/+bug
- Upstream https://github.com/micheleg/dash-to-dock/issues
- The package does not deal with exotic hardware we cannot support
[Quality assurance - testing]
- The package runs a test suite on build time, if it fails
it makes the build fail, link to build log
https://launchpadlibrarian.net/836597897/buildlog_ubuntu-resolute-amd64.gnome-shell-ubuntu-extensions_49.26.04.0ubuntu_BUILDING.txt.gz
- The package runs an autopkgtest, and is currently passing on all
architectures except s390x (but it's not a regression)
https://autopkgtest.ubuntu.com/packages/gnome-shell-ubuntu-extensions
It's also used to run the gnome-shell autopkgtests:
https://autopkgtest.ubuntu.com/packages/gnome-shell
The autopkgtest does some basic checks, but gnome-shell package is using this
package to run the autopkgtest as dependency.
So if loading any of these extensions fail at runtime gnome-shell autopkgtest
will fail.
- The package does have not failing autopkgtests right now
[Quality assurance - packaging]
- debian/watch is not present because it is a native package
- debian/control defines a correct Maintainer field
- This package does not yield any lintian Warnings, Errors
We run lintian --pedantic as part of our CI (see lintian results table):
-
https://github.com/ubuntu/gnome-shell-ubuntu-extensions/actions/runs/20104413580
- Lintian overrides are present, but they are ok to cover a non-executable
script that we launch from an extension using the verified gjs binary path
rather than relying on system.
- This package does not rely on obsolete or about to be demoted packages.
- This package has no python2 or GTK2 dependencies
- We are removing also any GTK3 dependency
- The package will be installed by default, but does not ask debconf
- Packaging and build is easy:
https://github.com/ubuntu/gnome-shell-ubuntu-extensions/blob/49.26.04.0ubuntu/debian/rules
We only override some default rules in order to adapt to the package needs.
[UI standards]
- Application is end-user facing, Translation is present, via standard
intltool/gettext and fetched at build time via meson.
Each extension uses different translation domains.
- End-user applications without desktop file, not needed because the extensions
are loaded by gnome shell and they are not expected to be launched by the user
directly
[Dependencies]
- Used check-mir from ubuntu-dev-tools to validate
all dependencies or recommends are in main.
[Standards compliance]
- This package correctly follows FHS and Debian Policy
[Maintenance/Owner]
- The owning team will be ~ubuntu-desktop and I have their acknowledgment for
that commitment
- The future owning team is not yet subscribed, but will subscribe to
the package before promotion
- The team ~ubuntu-desktop is aware of the implications of vendored code and (as
alerted by the security team) commits to provide updates and backports
to the security team for any affected vendored code for the lifetime
of the release (including ESM).
- This package uses vendored code and tracked using meson wrap files that must
point to specific versions, refreshing that code is outlined in
debian/README.source and checked by CI and during source builds.
- This package is not rust based
- The package has been built within the last 3 months in the archive
- Build link on launchpad:
https://launchpadlibrarian.net/836597897/buildlog_ubuntu-resolute-amd64.gnome-shell-ubuntu-extensions_49.26.04.0ubuntu_BUILDING.txt.gz
- This change will not impact other teams
[Background information]
The Package description explains the package well
** Affects: gnome-shell-ubuntu-extensions (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2134583
Title:
[MIR] gnome-shell-ubuntu-extensions
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-shell-ubuntu-extensions/+bug/2134583/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs