elogind v246.9 Released

Page Contents

It has been a long while since I last could write a post like this, but now it is finally done and elogind v246.9 has been released.

I have already written in “Long Time No See!” about why my spare time was so extremely disrupted this year. And in the final weeks of 2020 my time is also extremely challanged by my day-job, so I am very happy that this release got out today.

Update from 2020-12-21: Unfortunately a small mistake crept into the release and caused elogind to prefer logging to kmsg again. Please use the elogind v246.9.1 Service Release instead, which prefers logging to syslog.

Changes and Additions

  • Removed unused source files and headers.
  • pam_elogind: Do not ask for ‘elogind-user-record’, nothing sets that up.
  • suspend/hibernate: Read current config before acting. This way users can change their configurations and have them applied without the need to restart or SIGHUP elogind.
  • Enable checking for BTRFS before calculating an offset to a swap_file before hibernating.
  • Makefile: Allow parallel debug and release builds.
  • cgroup controller detection has been enhanced to be more reliable.
  • Makefile: Fully wrap meson/ninja to be compatible with the JetBrains CLion IDE.
  • Support config files in .d directories: (#170, #172) Configuration loading as been enhanced to additionally search for configuration files (*.conf) in:
    • /etc/elogind/logind.conf.d
    • /run/elogind/logind.conf.d
    • /usr/local/lib/elogind/logind.conf.d
    • /usr/lib/elogind/logind.conf.d
    • /lib/elogind/logind.conf.d (if split-usr is set)
      Additionally elogind now looks into the following paths for configuration files with [Sleep] configurations:
    • /etc/elogind/sleep.conf.d
    • /run/elogind/sleep.conf.d
    • /usr/local/lib/elogind/sleep.conf.d
    • /usr/lib/elogind/sleep.conf.d
    • /lib/elogind/sleep.conf.d (if split-usr is set)
      Additional to the system shutdown skript directory, elogind will now also look into /etc/elogind/system-shutdown for shutdown hook skripts.
  • Add functionality to try to lay present nvidia cards to sleep when suspending/hibernating (#140)
    New logind.conf entry: HandleNvidiaSleep default: no
  • Actually heed SuspendMode= settings in logind.conf
  • Prefer syslog over kmsg, elogind is a daemon, not a kernel module.
  • Make broadcasting of PowerOff/Suspend cancellation optional. (#175)
    New logind.conf entryies:
    • BroadcastPowerOffInterrupts default: yes
    • BroadcastSuspendInterrupts default: yes

Fixed Bugs

  • Fix two potential NULL pointer issues.
  • Execute wakeup skripts in serial order. (#72)
  • Fix creation of user runtime directories.
  • Fix elogind double fork, so logging works as expected.
  • Make privilege check on suspend/hibernate optional. (#167)
  • man logind.conf: Document sleep modes/states (#180)
    (You might need to use LC_ALL=C to actually see this, as translations installed are for systemd logind.conf.)


A big thank you to all the people who helped me sorting things out, fixing bugs, committing pull requests and were especially patient this year.

Thank you all for making it possible for elogind v246.9 being released.

You all are awesome!

Leave a Comment

Your email address will not be published. Required fields are marked *