** Description changed:

  When pemmican-reset starts and finds that the power supply is
  insufficient, it issues a notification.  This is all well and good.  But
  the way it does so is to *wait for the notification to be acknowledged*
  before it exits.  That is *not* all well and good, because in doing so
  it prevents systemd user services such as graphical-session from
  starting.  And this is so because it specifies in its systemd service
  description:
  
  ```
  [Install]
  WantedBy=graphical-session.target
  ```
  
  The end result is that if it issues a notification, the graphical
  session service will hang waiting for it to complete until the user
  explicitly acknowledges the notification.  This, in turn, causes xdg-
  desktop-portal to fail to start, and that causes gnome-terminal-service
  to fail to start because it waits for the identifier supplied by xdg-
- desktop-portal to become available via dbus.
+ desktop-portal to become available via dbus.  And as a consequence, you
+ can't start gnome-terminal until you clear the notification (and perhaps
+ not even then, since these other service startups might well have timed
+ out by the time the notification is acknowledged).
+ 
+ This is a serious bug.  Ubuntu users on Pi5 systems that have power
+ supplies that would result in this notification will *all* be affected
+ by this in various ways, depending on what user services need to be up
+ and running for them to do what they do.
+ 
  
  The bottom line is this: pemmican-reset *must not* block in such a way
  as to prevent anything else from starting.  Its systemd descriptor says
  that it's a one-shot startup:
  
  ```
  [Service]
  Slice=session.slice
  Type=oneshot
  ExecStart=pemmican-reset
  Restart=on-failure
  RestartSec=1s
  ```
  
  which means that systemd will wait for it to exit.
  
  I worked around this issue by supplying my own augmentation to the
  pemmican-reset systemd descriptor:
  
  ```
  # /etc/systemd/user/pemmican-reset.service.d/fix-deps.conf
  [Unit]
  After=graphical-session.target
  
  [Install]
  WantedBy=default.target
  ```
  
  While pemmican-reset still sits there until the notification is
  acknowledged, the above at least allows the rest of the desktop system
  to start properly and thus gnome-terminal now starts as expected.
  
- 
- The bottom line is this: pemmican-reset should issue the notification and 
*exit immediately*, rather than waiting for the user to acknowledge the 
message.  The AI I've been working with to diagnose this claims this to be the 
offending code:
- 
+ The bottom line is this: pemmican-reset should issue the notification
+ and *exit immediately*, rather than waiting for the user to acknowledge
+ the message.  The AI I've been working with to diagnose this claims this
+ to be the offending code:
  
  /usr/lib/python3/dist-packages/pemmican/gui.py:
  
  ```
  # If nothing is pending (already!), just exit immediately
  if not self.notifier.pending:
-     self.main_loop.quit()
+     self.main_loop.quit()
  ```
  
  which seems sensible.
- 
  
  LSB release info:
  ```
  No LSB modules are available.
  Description:    Ubuntu 24.04.3 LTS
  Release:        24.04
  ```
- 
  
  Package info:
  
  ```
  kevin@printserver-pi4:~$ dpkg -l pemmican-desktop
  Desired=Unknown/Install/Remove/Purge/Hold
  | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
  |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
  ||/ Name             Version        Architecture Description
  
+++-================-==============-============-=========================================================================
  ii  pemmican-desktop 1.0.3-0ubuntu1 all          Notify users of Raspberry Pi 
5 power issues via freedesktop notifications
  ```

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2120731

Title:
  Raspberry Pi 5 16G, Ubuntu 24.04: pemmican-reset waits for
  notification acknowledgement, prevents full desktop service startup

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/pemmican/+bug/2120731/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to