From 44298e76d5f5badef4b1026412049314eacf2949 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Mon, 11 Mar 2019 01:09:50 -0400 Subject: lightdm: disable writing dmrc files to home Can cause issues where lightdm prefers the last saved session in .dmrc even if it doesn't exist anymore, preventing people from logging in to a session. --- pkgs/applications/display-managers/lightdm/default.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/display-managers/lightdm/default.nix b/pkgs/applications/display-managers/lightdm/default.nix index a965ff4c8bb0..650bab334333 100644 --- a/pkgs/applications/display-managers/lightdm/default.nix +++ b/pkgs/applications/display-managers/lightdm/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, pam, pkgconfig, autoconf, automake, libtool, libxcb , glib, libXdmcp, itstool, intltool, libxklavier, libgcrypt, audit, busybox -, polkit, accountsservice, gtk-doc, gnome3, gobject-introspection, vala +, polkit, accountsservice, gtk-doc, gnome3, gobject-introspection, vala, fetchpatch , withQt4 ? false, qt4 , withQt5 ? false, qtbase }: @@ -49,7 +49,14 @@ stdenv.mkDerivation rec { ] ++ optional withQt4 qt4 ++ optional withQt5 qtbase; - patches = [ ./run-dir.patch ]; + patches = [ + ./run-dir.patch + # Adds option to disable writing dmrc files + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/lightdm/raw/4cf0d2bed8d1c68970b0322ccd5dbbbb7a0b12bc/f/lightdm-1.25.1-disable_dmrc.patch"; + sha256 = "06f7iabagrsiws2l75sx2jyljknr9js7ydn151p3qfi104d1541n"; + }) + ]; preConfigure = "NOCONFIGURE=1 ./autogen.sh"; @@ -58,11 +65,12 @@ stdenv.mkDerivation rec { "--sysconfdir=/etc" "--disable-tests" "--disable-static" + "--disable-dmrc" ] ++ optional withQt4 "--enable-liblightdm-qt" ++ optional withQt5 "--enable-liblightdm-qt5"; installFlags = [ - "sysconfdir=\${out}/etc" + "sysconfdir=${placeholder ''out''}/etc" "localstatedir=\${TMPDIR}" ]; @@ -76,7 +84,7 @@ stdenv.mkDerivation rec { meta = { homepage = https://github.com/CanonicalLtd/lightdm; - description = "A cross-desktop display manager."; + description = "A cross-desktop display manager"; platforms = platforms.linux; license = licenses.gpl3; maintainers = with maintainers; [ ocharles worldofpeace ]; -- cgit v1.2.3