apport hook to detect wayland sessions

Bug #1418262 reported by Tim Lunn
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu GNOME
Fix Released
Undecided
Unassigned
apport (Ubuntu)
Fix Released
High
Unassigned

Bug Description

Now that we have an experimental GNOME wayland session in vivid, it would be somewhat useful for apport to detect if a bug report is from a wayland session. It probably makes sense for this to be global since other projects will eventually offer wayland sessions as well. Not sure on the best place for this to live though in apport or in wayland packaging or elsewhere?

detecting WAYLAND_DISPLAY env is probably enough to detect a running session, and there may be a few other useful env variables such as (GDK/CLUTTER)_BACKEND etc

ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: apport 2.15.1-0ubuntu4
ProcVersionSignature: Ubuntu 3.18.0-12.13-generic 3.18.4
Uname: Linux 3.18.0-12-generic x86_64
NonfreeKernelModules: nvidia
ApportLog:

ApportVersion: 2.15.1-0ubuntu4
Architecture: amd64
CurrentDesktop: GNOME
Date: Thu Feb 5 10:51:38 2015
InstallationDate: Installed on 2012-09-23 (864 days ago)
InstallationMedia: Ubuntu GNOME Remix 12.10 "Quantal Quetzal" - Alpha amd64(20120922)
PackageArchitecture: all
SourcePackage: apport
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Tim Lunn (darkxst) wrote :
Tim Lunn (darkxst)
Changed in ubuntu-gnome:
milestone: none → vivid
Revision history for this message
Martin Pitt (pitti) wrote :

I propose that weston (or another typical wayland package) ships something like /usr/share/apport/general-hooks/weston.py (or wayland-session.py perhaps) which does the appropriate detection, and does

            report.setdefault('Tags', '')
            report['Tags'] += ' wayland-session'

Does that work for you?

affects: apport (Ubuntu) → weston (Ubuntu)
Changed in weston (Ubuntu):
status: New → Triaged
Revision history for this message
Martin Pitt (pitti) wrote :

Of course the hook needs to do some runtime detection (like checking the equivalent of $DISPLAY) before it sets the tag.

Revision history for this message
Martin Pitt (pitti) wrote :

So I was told that weston isn't actually installed; the wayland libs are in sync with Debian, so we can also put it into apport. But I want to point out that I cannot maintain that hook -- if the logic changes, I depend on external contributors to update it for me.

affects: weston (Ubuntu) → apport (Ubuntu)
Revision history for this message
Tim Lunn (darkxst) wrote :

Ubuntu GNOME team will maintain atleast for GNOME-isms that may exist in the wayland world, and that is what would also use useful to Debian I imagine, if other projects like KDE, end up with slightly different requirements it seems fair for them to proposed the required changes?

Changed in apport (Ubuntu):
importance: Undecided → High
Revision history for this message
Tim Lunn (darkxst) wrote :

This is the simplest possible hook that just adds a wayland tag

https://bugs.launchpad.net/ubuntu/+source/apport/+bugs?field.tag=wayland-session

It would be good to also detect if an app is running in wayland or Xwayland, however I need to find a better way to do this, since the env vars such as GDK_BACKEND=wayland, doesnt necessarily guarantee that backend was used.

Revision history for this message
Martin Pitt (pitti) wrote :

Committed to packaging branch, thanks!

Changed in apport (Ubuntu):
status: Triaged → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apport - 2.16-0ubuntu1

---------------
apport (2.16-0ubuntu1) vivid; urgency=medium

  * New upstream release:
    - Add a new method ProblemReport.extract_keys() which writes binary keys
      (which can be very large) directly to files without loading them all
      into memory first. Use that in apport-unpack. Thanks Louis Bouchard!
      (LP: #1307413)
    - launchpad backend: Work with Python 3, now that launchpadlib exists for
      Python 3. (LP: #1153671)
    - apport-bug, apport-gtk: Also check for $WAYLAND_SESSION, to use
      apport-gtk instead of apport-cli under Wayland. Thanks Tim Lunn.
      (LP: #1418766)
    - apport-gtk: When running under Wayland, avoid Gdk/Wnck operation for
      setting crash window modal to the PID of the crashed window; these only
      work under X11.
    - Don't install the test suite any more, to save 1 MB of installed space.
      It can be run out of trunk easily enough, and distributions can install
      it from tests/ if they desire.
    - hookutils, attach_root_command_outputs(): Fix UnicodeDecodeError crash
      for non-textual values. (LP: #1370259)
    - ui.py: Only provide a UI to hooks if the crash db will accept the
      report. This avoids asking questions if the report is merely sent to
      whoopsie for Ubuntu stable releases. Thanks Brian Murrary.
      (LP: #1084979)
    - whoopsie-upload-all: Add package information to the report before
      calling package hooks. Thanks Brian Murray.
    - Fix check for available terminal when checking whether to display the
      "Examine locally" button.
  * Add general hook for detecting Wayland sessions and tagging them with
    "wayland-session". Thanks Timm Lunn! (LP: #1418262)
  * debian/tests/upstream-system: Copy tests from source tree, as
    /usr/share/apport/testsuite/ does not exist any more.
 -- Martin Pitt <email address hidden> Fri, 06 Feb 2015 10:11:30 +0100

Changed in apport (Ubuntu):
status: Fix Committed → Fix Released
Tim Lunn (darkxst)
Changed in ubuntu-gnome:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.