origin of this project: to take the excellent logind functionality
from systemd and provide it as a standalone package.
-We like systemd. We realize that there are people out there that hate
-it. You're welcome to use elogind for whatever purpose you like --
+You're welcome to use elogind for whatever purpose you like --
as-is, or as a jumping-off point for other things -- but please don't
-use it as part of some anti-systemd vendetta. Systemd hackers are
-smart folks that are trying to solve interesting problems on the free
-desktop, and their large adoption is largely because they solve
-problems that users and developers of user-focused applications care
-about. We are appreciative of their logind effort and think that
-everyone deserves to run it if they like, even if they use a different
-PID 1.
+use it as part of some anti-systemd vendetta. We are appreciative of
+the systemd developers logind effort and think that everyone deserves
+to run it if they like. Not matter what kind of PID1 they use.
Differences relative to systemd
-------------------------------
LGPLv2.1+ for all code
- - except src/shared/MurmurHash2.c which is Public Domain
- - except src/shared/siphash24.c which is CC0 Public Domain
- - except src/journal/lookup3.c which is Public Domain
+ - except src/basic/siphash24.c which is CC0 Public Domain
Dependencies
------------
- glibc >= 2.14
+ glibc >= 2.16
libcap
- libmount >= 2.20 (from util-linux)
- libseccomp >= 1.0.0 (optional)
+ libmount >= 2.27.1 (from util-linux)
+ (util-linux < 2.29 *must* be built with --enable-libmount-force-mountinfo,
+ and later versions without --enable-libmount-support-mtab.)
+ libseccomp >= 2.3.1 (optional)
libblkid >= 2.24 (from util-linux) (optional)
PAM >= 1.1.2 (optional)
libacl (optional)
libselinux (optional)
- make, gcc, and similar tools
+ libpython (optional)
+ pkg-config
+ gperf >= 3.1
+ docbook-xsl (optional, required for documentation)
+ xsltproc (optional, required for documentation)
+ python-lxml (optional, required to build the indices)
+ python, meson, ninja
+ gcc, awk, sed, grep, m4, and similar tools
During runtime, you need the following additional dependencies:
+ util-linux >= v2.27.1 required
dbus >= 1.4.0 (strictly speaking optional, but recommended)
+ NOTE: If using dbus < 1.9.18, you should override the default
+ policy directory (--with-dbuspolicydir=/etc/dbus-1/system.d).
PolicyKit (optional)
-When building from git, you need the following additional
-dependencies:
+ To build in directory build/:
+ meson build/ && ninja -C build
- pkg-config
- docbook-xsl
- xsltproc
- automake
- autoconf
- libtool
- intltool
- gperf
- gtkdocize (optional)
+ Any configuration options can be specified as -Darg=value... arguments
+ to meson. After the build directory is initially configured, the configuration
+ can be changed with:
+ meson configure -Darg=value... build/
+ 'meson configure' without any arguments will print out available options and
+ their current values.
+
+ Useful commands:
+ ninja -v some/target
+ ninja test
+ sudo ninja install
+ DESTDIR=... ninja install
+
+ A tarball can be created with:
+ git archive --format=tar --prefix=elogind-238/ v238 | xz > elogind-238.tar.xz