forked from mirrors/nixpkgs
786b5dd07b
Since systemd has been adopted for a while now, we should switch to using it for light-locker as well. So I disabled ConsoleKit/UPower support in favor of using systemd with logind. This fixed many issues for me, and made light-locker working again. I followed the PKGBUILD of Arch's package in determining the right configure flags. See: https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/light-locker
60 lines
1.6 KiB
Nix
60 lines
1.6 KiB
Nix
{ stdenv
|
|
, fetchFromGitHub
|
|
, which
|
|
, xfce
|
|
, glib
|
|
, pkgconfig
|
|
, libX11
|
|
, libXScrnSaver
|
|
, libXxf86misc
|
|
, gtk3
|
|
, dbus_glib
|
|
, systemd
|
|
, wrapGAppsHook
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "${basename}-${version}";
|
|
basename = "light-locker";
|
|
version = "1.7.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "the-cavalry";
|
|
repo = basename;
|
|
rev = "v${version}";
|
|
sha256 = "0ygkp5vgkx2nfhfql6j2jsfay394gda23ir3sx4f72j4agsirjvj";
|
|
};
|
|
|
|
# Patch so that systemd is "found" when configuring.
|
|
patches = [ ./systemd.patch ];
|
|
|
|
buildInputs = [ which xfce.xfce4_dev_tools glib systemd pkgconfig
|
|
libX11 libXScrnSaver libXxf86misc gtk3 dbus_glib wrapGAppsHook ];
|
|
|
|
preConfigure = ''
|
|
./autogen.sh
|
|
'';
|
|
|
|
configureFlags = [ "--with-xf86gamma-ext" "--with-mit-ext"
|
|
"--with-dpms-ext" "--with-systemd"
|
|
# ConsoleKit and UPower were dropped in favor
|
|
# of systemd replacements
|
|
"--without-console-kit" "--without-upower" ];
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://github.com/the-cavalry/light-locker;
|
|
description = "Light-locker is a simple locker";
|
|
longDescription = ''
|
|
light-locker is a simple locker (forked from gnome-screensaver)
|
|
that aims to have simple, sane, secure defaults and be well
|
|
integrated with the desktop while not carrying any
|
|
desktop-specific dependencies. It relies on lightdm for locking
|
|
and unlocking your session via ConsoleKit/UPower or
|
|
logind/systemd.
|
|
'';
|
|
license = licenses.gpl2;
|
|
maintainers = with maintainers; [ obadz ];
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|