Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • VLC VLC
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,795
    • Issues 3,795
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 252
    • Merge requests 252
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • VideoLANVideoLAN
  • VLCVLC
  • Issues
  • #25785
Closed
Open
Issue created May 30, 2021 by Oliver Smith@ollieparanoid

inhibit/dbus.c: use org.freedesktop.login1 (provided by systemd/elogind)

The inhibit/dbus.c code currently supports the following APIs:

static const char dbus_service[][40] =
{
    [FDO_SS] = "org.freedesktop.ScreenSaver",
    [FDO_PM] = "org.freedesktop.PowerManagement.Inhibit",
    [MATE]   = "org.mate.SessionManager",
    [GNOME]  = "org.gnome.SessionManager",
};

At least the org.freedesktop.PowerManagement.Inhibit spec of these is obsolete, as noted here:

https://www.freedesktop.org/wiki/Specifications/power-management-spec/

The modern API seems to be the Inhibit method of org.freedesktop.login1 (provided by systemd/elogind):

https://www.freedesktop.org/wiki/Software/systemd/inhibit/

It would be great if this was supported too.

My use case is probably a bit obscure, but I'll describe it anyway. Running VLC on a Linux phone with the Gnome-based Phosh interface, which does not provide org.gnome.SessionManager. Inhibiting org.freedesktop.login1 there would prevent suspending the phone when VLC is playing music / podcasts.

Edited May 30, 2021 by Oliver Smith
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking

VideoLAN code repository instance