~dbungert/update-notifier:lp-1821412-x11

Last commit made on 2021-07-13
Get this branch:
git clone -b lp-1821412-x11 https://git.launchpad.net/~dbungert/update-notifier
Only Dan Bungert can upload to this branch. If you are Dan Bungert please log in for upload directions.

Branch merges

Branch information

Name:
lp-1821412-x11
Repository:
lp:~dbungert/update-notifier

Recent commits

3c01bfb... by Dan Bungert

Changelog

06058d5... by Dan Bungert

Fix x11 early process exit when reporting a crash (LP: 1821412)

Sometimes, pressing the Report button on the system crash dialog does
nothing helpful.

This mechanism works by using g_spawn_async to run the reporting
programs. I found that the child processes were not being allowed to
run to completion. Looking at the documentation for GSubprocess, this
appears to be expected behavior as it purposefully closes child
processes when the parent process exits to prevent zombies. Sadly,
allowing the child processes to continue running is intended in this
case, and I did not locate a suitable mechanism to keep these child
processes running within glib & related libraries.
(though fork/execv worked fine)

Changing to g_spawn_sync does help the above problem. However, it
exposes a new problem. The usage here of gtk_dialog_run results in the
dialog staying on screen - the call to gtk_widget_destroy doesn't
actually make the dialog go away, and instead it goes away upon process
exit. The combination of this behavior with needing to move to
g_spawn_sync and not immediatly exiting means that this dialog staying
on screen is a problem.

The core update-notifier binary doesn't seem to have this dialog
problem, presumably because it uses gtk_main to start an event loop
while system-crash does not. It also doesn't want to immediately exit,
so we have time for async processes to do their thing.

Upon looking into gtk_dialog_run, however, I found that this call is no
longer present in gtk4. This is one motivation among several to
encourage a more modern gtk usage.

In summary, modernize gtk usage to allow dialogs to close when intended
so that we can run child processes and wait for them to exit.

Also adapt the above to distro-cd-updater, since it has the same problem
signature (no gtk_main(), call to gtk_dialog_run(), use decision from
dialog to run subprocess with g_spawn_async() then immediately exit).

There is also a wayland version of this problem, which might be related
to the above but seems to have additional polkit problems, which I do
not expect to be resolved by this commit.

68ca188... by Sebastien Bacher

Upload to impish

b1a3a54... by Sebastien Bacher

Use the ayatana variant of the indicators

33addf5... by Brian Murray

data/backend_helper.py: only call update-manager if it is installed on the system. (LP: #1927994)

4e6fb7e... by Brian Murray

releasing package update-notifier version 3.192.44

5eb70de... by Lucas Albuquerque Medeiros de Moura

update changelog

eb3c791... by Lucas Albuquerque Medeiros de Moura

Add esm-apps header on non-esm and lts distros

When running apt-check on a esm distro, we display a header
showing the status of esm-infra on the system if we have esm-infra
source file on it. We should do the same for lts distros, but instead
of showing esm-infra status, we will show esm-apps status

8bf9759... by Brian Murray

releasing package update-notifier version 3.192.43

1374e16... by Brian Murray

cleanup debian/changelog