about summary refs log tree commit diff
path: root/pkgs/applications/display-managers
diff options
context:
space:
mode:
authoradisbladis <adis@blad.is>2017-10-12 12:01:42 +0800
committeradisbladis <adis@blad.is>2017-10-19 11:09:24 +0800
commit0d45be3d914fa809a441331e4669aaef61310d89 (patch)
tree8effbcaeff78a4820744542967b401eac212bafe /pkgs/applications/display-managers
parentf8368f68ea6e6e55fbefc3df3a95efb398354068 (diff)
sddm: 0.15.0 -> 0.16.0
Diffstat (limited to 'pkgs/applications/display-managers')
-rw-r--r--pkgs/applications/display-managers/sddm/default.nix4
-rw-r--r--pkgs/applications/display-managers/sddm/disable-hidpi-xorg.patch26
-rw-r--r--pkgs/applications/display-managers/sddm/sddm-ignore-config-mtime.patch59
-rw-r--r--pkgs/applications/display-managers/sddm/series3
4 files changed, 67 insertions, 25 deletions
diff --git a/pkgs/applications/display-managers/sddm/default.nix b/pkgs/applications/display-managers/sddm/default.nix
index 3ce8d075410bf..47365fad6c47d 100644
--- a/pkgs/applications/display-managers/sddm/default.nix
+++ b/pkgs/applications/display-managers/sddm/default.nix
@@ -5,7 +5,7 @@
 
 let
 
-  version = "0.15.0";
+  version = "0.16.0";
 
 in mkDerivation rec {
   name = "sddm-${version}";
@@ -14,7 +14,7 @@ in mkDerivation rec {
     owner = "sddm";
     repo = "sddm";
     rev = "v${version}";
-    sha256 = "1wissgl7wd7fblq8ghz8n2fr6wqip7h88p9fiarfpvi1918fgng8";
+    sha256 = "1j0rc8nk8bz7sxa0bc6lx9v7r3zlcfyicngfjqb894ni9k71kzsb";
   };
 
   patches =
diff --git a/pkgs/applications/display-managers/sddm/disable-hidpi-xorg.patch b/pkgs/applications/display-managers/sddm/disable-hidpi-xorg.patch
new file mode 100644
index 0000000000000..abd10016a2062
--- /dev/null
+++ b/pkgs/applications/display-managers/sddm/disable-hidpi-xorg.patch
@@ -0,0 +1,26 @@
+From 6bff89542a2c1b5719370baf3c3a38fd8b2b3c37 Mon Sep 17 00:00:00 2001
+From: adisbladis <adis@blad.is>
+Date: Mon, 16 Oct 2017 02:25:50 +0800
+Subject: [PATCH] Disable HiDPI by default on X11 as it causes segmentation
+ faults with certain themes (KDE Breeze)
+
+---
+ src/common/Configuration.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/common/Configuration.h b/src/common/Configuration.h
+index 19c6fb1..2bb1dc5 100644
+--- a/src/common/Configuration.h
++++ b/src/common/Configuration.h
+@@ -69,7 +69,7 @@ namespace SDDM {
+             Entry(DisplayCommand,      QString,     _S(DATA_INSTALL_DIR "/scripts/Xsetup"),     _S("Path to a script to execute when starting the display server"));
+             Entry(DisplayStopCommand,  QString,     _S(DATA_INSTALL_DIR "/scripts/Xstop"),      _S("Path to a script to execute when stopping the display server"));
+             Entry(MinimumVT,           int,         MINIMUM_VT,                                 _S("The lowest virtual terminal number that will be used."));
+-            Entry(EnableHiDPI,         bool,        false,                                      _S("Enable Qt's automatic high-DPI scaling"));
++            Entry(EnableHiDPI,         bool,        true,                                      _S("Enable Qt's automatic high-DPI scaling"));
+         );
+ 
+         Section(Wayland,
+-- 
+2.14.2
+
diff --git a/pkgs/applications/display-managers/sddm/sddm-ignore-config-mtime.patch b/pkgs/applications/display-managers/sddm/sddm-ignore-config-mtime.patch
index 836df2de292d0..aac09dfe876b5 100644
--- a/pkgs/applications/display-managers/sddm/sddm-ignore-config-mtime.patch
+++ b/pkgs/applications/display-managers/sddm/sddm-ignore-config-mtime.patch
@@ -1,28 +1,43 @@
-From e9d82bfbc49993a5be2c93f6b72a969630587f26 Mon Sep 17 00:00:00 2001
-From: Thomas Tuegel <ttuegel@gmail.com>
-Date: Mon, 23 Nov 2015 06:56:28 -0600
-Subject: [PATCH 1/2] ignore config mtime
-
----
- src/common/ConfigReader.cpp | 5 -----
- 1 file changed, 5 deletions(-)
-
 diff --git a/src/common/ConfigReader.cpp b/src/common/ConfigReader.cpp
-index cfc9940..5bf5a6a 100644
+index 4b5983c..911c511 100644
 --- a/src/common/ConfigReader.cpp
 +++ b/src/common/ConfigReader.cpp
-@@ -138,11 +138,6 @@ namespace SDDM {
-         QString currentSection = QStringLiteral(IMPLICIT_SECTION);
+@@ -147,16 +147,13 @@ namespace SDDM {
+         // * m_path (classic fallback /etc/sddm.conf)
  
-         QFile in(m_path);
--        QDateTime modificationTime = QFileInfo(in).lastModified();
--        if (modificationTime <= m_fileModificationTime) {
+         QStringList files;
+-        QDateTime latestModificationTime = QFileInfo(m_path).lastModified();
+ 
+         if (!m_sysConfigDir.isEmpty()) {
+             //include the configDir in modification time so we also reload on any files added/removed
+             QDir dir(m_sysConfigDir);
+             if (dir.exists()) {
+-                latestModificationTime = std::max(latestModificationTime,  QFileInfo(m_sysConfigDir).lastModified());
+                 foreach (const QFileInfo &file, dir.entryInfoList(QDir::Files | QDir::NoDotAndDotDot, QDir::LocaleAware)) {
+                     files << (file.absoluteFilePath());
+-                    latestModificationTime = std::max(latestModificationTime, file.lastModified());
+                 }
+             }
+         }
+@@ -164,21 +161,14 @@ namespace SDDM {
+             //include the configDir in modification time so we also reload on any files added/removed
+             QDir dir(m_configDir);
+             if (dir.exists()) {
+-                latestModificationTime = std::max(latestModificationTime,  QFileInfo(m_configDir).lastModified());
+                 foreach (const QFileInfo &file, dir.entryInfoList(QDir::Files | QDir::NoDotAndDotDot, QDir::LocaleAware)) {
+                     files << (file.absoluteFilePath());
+-                    latestModificationTime = std::max(latestModificationTime, file.lastModified());
+                 }
+             }
+         }
+ 
+         files << m_path;
+ 
+-        if (latestModificationTime <= m_fileModificationTime) {
 -            return;
 -        }
--        m_fileModificationTime = modificationTime;
- 
-         in.open(QIODevice::ReadOnly);
-         while (!in.atEnd()) {
--- 
-2.6.3
-
+-        m_fileModificationTime = latestModificationTime;
+-
+         foreach (const QString &filepath, files) {
+             loadInternal(filepath);
+         }
diff --git a/pkgs/applications/display-managers/sddm/series b/pkgs/applications/display-managers/sddm/series
index cb6ea65fedb17..09992b211c55d 100644
--- a/pkgs/applications/display-managers/sddm/series
+++ b/pkgs/applications/display-managers/sddm/series
@@ -1 +1,2 @@
-sddm-ignore-config-mtime.patch
\ No newline at end of file
+sddm-ignore-config-mtime.patch
+disable-hidpi-xorg.patch