diff --git a/pkgs/applications/display-managers/sddm/cmake_paths.patch b/pkgs/applications/display-managers/sddm/cmake_paths.patch deleted file mode 100644 index 7deb3e2e1bd9..000000000000 --- a/pkgs/applications/display-managers/sddm/cmake_paths.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 4d6e0a9..df4ad28 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -77,7 +77,9 @@ find_package(Qt5LinguistTools REQUIRED) - - # find qt5 imports dir - get_target_property(QMAKE_EXECUTABLE Qt5::qmake LOCATION) --exec_program(${QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_QML" RETURN_VALUE return_code OUTPUT_VARIABLE QT_IMPORTS_DIR) -+if(NOT QT_IMPORTS_DIR) -+ exec_program(${QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_QML" RETURN_VALUE return_code OUTPUT_VARIABLE QT_IMPORTS_DIR) -+endif() - - # Set components version - set(COMPONENTS_VERSION 2.0) -diff --git a/data/man/sddm.conf.rst.in b/data/man/sddm.conf.rst.in -index 6a28224..798bc5c 100644 ---- a/data/man/sddm.conf.rst.in -+++ b/data/man/sddm.conf.rst.in -@@ -65,6 +65,10 @@ OPTIONS - Path of the X server. - Default value is "/usr/bin/X". - -+`XephyrPath=` -+ Path of the Xephyr. -+ Default value is "/usr/bin/Xephyr". -+ - `XauthPath=` - Path of the Xauth. - Default value is "/usr/bin/xauth". -diff --git a/src/common/Configuration.h b/src/common/Configuration.h -index 72aa6f4..854cc22 100644 ---- a/src/common/Configuration.h -+++ b/src/common/Configuration.h -@@ -54,6 +54,7 @@ namespace SDDM { - // TODO: Not absolutely sure if everything belongs here. Xsessions, VT and probably some more seem universal - Section(XDisplay, - Entry(ServerPath, QString, _S("/usr/bin/X"), _S("X server path")); -+ Entry(XephyrPath, QString, _S("/usr/bin/Xephyr"), _S("Xephyr path")); - Entry(XauthPath, QString, _S("/usr/bin/xauth"), _S("Xauth path")); - Entry(SessionDir, QString, _S("/usr/share/xsessions"), _S("Session description directory")); - Entry(SessionCommand, QString, _S(SESSION_COMMAND), _S("Xsession script path\n" -diff --git a/src/daemon/XorgDisplayServer.cpp b/src/daemon/XorgDisplayServer.cpp -index f10ad82..cb9de3f 100644 ---- a/src/daemon/XorgDisplayServer.cpp -+++ b/src/daemon/XorgDisplayServer.cpp -@@ -136,7 +136,7 @@ namespace SDDM { - if (daemonApp->testing()) { - QStringList args; - args << m_display << "-ac" << "-br" << "-noreset" << "-screen" << "800x600"; -- process->start("/usr/bin/Xephyr", args); -+ process->start(mainConfig.XDisplay.XephyrPath.get(), args); - } else { - // set process environment - QProcessEnvironment env = QProcessEnvironment::systemEnvironment(); diff --git a/pkgs/applications/display-managers/sddm/default.nix b/pkgs/applications/display-managers/sddm/default.nix index ad2c885e4966..5f8b13d29059 100644 --- a/pkgs/applications/display-managers/sddm/default.nix +++ b/pkgs/applications/display-managers/sddm/default.nix @@ -1,8 +1,8 @@ { stdenv, fetchpatch, makeWrapper, fetchFromGitHub, cmake, pkgconfig, libxcb, libpthreadstubs -, libXdmcp, libXau, qt5, pam, systemd }: +, libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam, systemd }: let - version = "0.11.0"; + version = "0.12.0"; in stdenv.mkDerivation rec { name = "sddm-${version}"; @@ -11,19 +11,12 @@ stdenv.mkDerivation rec { owner = "sddm"; repo = "sddm"; rev = "v${version}"; - sha256 = "1s1gm0xvgwzrpxgni3ngdj8phzg21gkk1jyiv2l2i5ayl0jdm7ig"; + sha256 = "09amr61srvl52nvxlqqgs9fzn33pc2gjv5hc83gxx43x6q2j19gg"; }; - nativeBuildInputs = [ cmake pkgconfig qt5.tools makeWrapper ]; + nativeBuildInputs = [ cmake pkgconfig qttools ]; - buildInputs = [ libxcb libpthreadstubs libXdmcp libXau qt5.base pam systemd ]; - - patches = [ (fetchpatch { - url = "https://github.com/sddm/sddm/commit/9bc21ee7da5de6b2531d47d1af4d7b0a169990b9.patch"; - sha256 = "1pda0wf4xljdadja7iyh5c48h0347imadg9ya1dw5slgb7w1d94l"; - }) - ./cmake_paths.patch - ]; + buildInputs = [ libxcb libpthreadstubs libXdmcp libXau qtbase qtdeclarative pam systemd ]; cmakeFlags = [ "-DCONFIG_FILE=/etc/sddm.conf" ]; @@ -32,8 +25,8 @@ stdenv.mkDerivation rec { ''; postInstall = '' - wrapProgram $out/bin/sddm-greeter \ - --set QML2_IMPORT_PATH "${qt5.declarative}/lib/qt5/qml/" + wrapQtProgram $out/bin/sddm + wrapQtProgram $out/bin/sddm-greeter ''; enableParallelBuilding = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dd34f63ea3a5..78a4dc1d9962 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12734,7 +12734,7 @@ let printrun = callPackage ../applications/misc/printrun { }; - sddm = callPackage ../applications/display-managers/sddm { }; + sddm = qt5Libs.callPackage ../applications/display-managers/sddm { }; slim = callPackage ../applications/display-managers/slim { libpng = libpng12;