Skip to content

Commit

Permalink
sddm: Build with qt6
Browse files Browse the repository at this point in the history
Signed-off-by: Reilly Brogan <[email protected]>
  • Loading branch information
ReillyBrogan committed Jan 22, 2025
1 parent 913f740 commit f240c29
Show file tree
Hide file tree
Showing 5 changed files with 1,188 additions and 79 deletions.
Binary file modified s/sddm/manifest.x86_64.bin
Binary file not shown.
155 changes: 86 additions & 69 deletions s/sddm/manifest.x86_64.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
"packages": {
"sddm": {
"build-depends": [
"cmake(Qt5LinguistTools)",
"pkgconfig(Qt5Core)",
"pkgconfig(Qt5Qml)",
"cmake(Qt6LinguistTools)",
"pkgconfig(Qt6Core)",
"pkgconfig(Qt6Qml)",
"pkgconfig(gl)",
"pkgconfig(libsystemd)",
"pkgconfig(pam)",
Expand All @@ -15,12 +15,13 @@
],
"depends": [
"interpreter(/usr/lib/ld-linux-x86-64.so.2(x86_64))",
"soname(libQt5Core.so.5(x86_64))",
"soname(libQt5DBus.so.5(x86_64))",
"soname(libQt5Gui.so.5(x86_64))",
"soname(libQt5Network.so.5(x86_64))",
"soname(libQt5Qml.so.5(x86_64))",
"soname(libQt5Quick.so.5(x86_64))",
"qt6-wayland",
"soname(libQt6Core.so.6(x86_64))",
"soname(libQt6DBus.so.6(x86_64))",
"soname(libQt6Gui.so.6(x86_64))",
"soname(libQt6Network.so.6(x86_64))",
"soname(libQt6Qml.so.6(x86_64))",
"soname(libQt6Quick.so.6(x86_64))",
"soname(libXau.so.6(x86_64))",
"soname(libc++.so.1(x86_64))",
"soname(libc.so.6(x86_64))",
Expand All @@ -32,20 +33,31 @@
],
"files": [
"/usr/bin/sddm",
"/usr/bin/sddm-greeter",
"/usr/lib/qt5/qml/SddmComponents/Background.qml",
"/usr/lib/qt5/qml/SddmComponents/Button.qml",
"/usr/lib/qt5/qml/SddmComponents/Clock.qml",
"/usr/lib/qt5/qml/SddmComponents/ComboBox.qml",
"/usr/lib/qt5/qml/SddmComponents/ImageButton.qml",
"/usr/lib/qt5/qml/SddmComponents/LayoutBox.qml",
"/usr/lib/qt5/qml/SddmComponents/Menu.qml",
"/usr/lib/qt5/qml/SddmComponents/PasswordBox.qml",
"/usr/lib/qt5/qml/SddmComponents/PictureBox.qml",
"/usr/lib/qt5/qml/SddmComponents/TextBox.qml",
"/usr/lib/qt5/qml/SddmComponents/TextConstants.qml",
"/usr/lib/qt5/qml/SddmComponents/qmldir",
"/usr/lib/qt5/qml/SddmComponents/warning.png",
"/usr/bin/sddm-greeter-qt6",
"/usr/lib/qt6/qml/SddmComponents/Background.qml",
"/usr/lib/qt6/qml/SddmComponents/Background.qmlc",
"/usr/lib/qt6/qml/SddmComponents/Button.qml",
"/usr/lib/qt6/qml/SddmComponents/Button.qmlc",
"/usr/lib/qt6/qml/SddmComponents/Clock.qml",
"/usr/lib/qt6/qml/SddmComponents/Clock.qmlc",
"/usr/lib/qt6/qml/SddmComponents/ComboBox.qml",
"/usr/lib/qt6/qml/SddmComponents/ComboBox.qmlc",
"/usr/lib/qt6/qml/SddmComponents/ImageButton.qml",
"/usr/lib/qt6/qml/SddmComponents/ImageButton.qmlc",
"/usr/lib/qt6/qml/SddmComponents/LayoutBox.qml",
"/usr/lib/qt6/qml/SddmComponents/LayoutBox.qmlc",
"/usr/lib/qt6/qml/SddmComponents/Menu.qml",
"/usr/lib/qt6/qml/SddmComponents/Menu.qmlc",
"/usr/lib/qt6/qml/SddmComponents/PasswordBox.qml",
"/usr/lib/qt6/qml/SddmComponents/PasswordBox.qmlc",
"/usr/lib/qt6/qml/SddmComponents/PictureBox.qml",
"/usr/lib/qt6/qml/SddmComponents/PictureBox.qmlc",
"/usr/lib/qt6/qml/SddmComponents/TextBox.qml",
"/usr/lib/qt6/qml/SddmComponents/TextBox.qmlc",
"/usr/lib/qt6/qml/SddmComponents/TextConstants.qml",
"/usr/lib/qt6/qml/SddmComponents/TextConstants.qmlc",
"/usr/lib/qt6/qml/SddmComponents/qmldir",
"/usr/lib/qt6/qml/SddmComponents/warning.png",
"/usr/lib/sddm/sddm-helper",
"/usr/lib/sddm/sddm-helper-start-wayland",
"/usr/lib/sddm/sddm-helper-start-x11user",
Expand Down Expand Up @@ -146,6 +158,7 @@
"/usr/share/sddm/scripts/Xstop",
"/usr/share/sddm/scripts/wayland-session",
"/usr/share/sddm/themes/elarun/Main.qml",
"/usr/share/sddm/themes/elarun/Main.qmlc",
"/usr/share/sddm/themes/elarun/README",
"/usr/share/sddm/themes/elarun/angle-down.png",
"/usr/share/sddm/themes/elarun/elarun.jpg",
Expand All @@ -166,6 +179,7 @@
"/usr/share/sddm/themes/elarun/theme.conf",
"/usr/share/sddm/themes/maldives/LICENSE",
"/usr/share/sddm/themes/maldives/Main.qml",
"/usr/share/sddm/themes/maldives/Main.qmlc",
"/usr/share/sddm/themes/maldives/README",
"/usr/share/sddm/themes/maldives/angle-down.png",
"/usr/share/sddm/themes/maldives/background.jpg",
Expand All @@ -175,9 +189,12 @@
"/usr/share/sddm/themes/maldives/theme.conf",
"/usr/share/sddm/themes/maya/LICENSE",
"/usr/share/sddm/themes/maya/Main.qml",
"/usr/share/sddm/themes/maya/Main.qmlc",
"/usr/share/sddm/themes/maya/README",
"/usr/share/sddm/themes/maya/components/SpButton.qml",
"/usr/share/sddm/themes/maya/components/SpButton.qmlc",
"/usr/share/sddm/themes/maya/components/SpClock.qml",
"/usr/share/sddm/themes/maya/components/SpClock.qmlc",
"/usr/share/sddm/themes/maya/fonts/OpenSans_CondLight.ttf",
"/usr/share/sddm/themes/maya/images/ic_arrow_drop_down_white_24px.svg",
"/usr/share/sddm/themes/maya/images/ic_power_settings_new_white_24px.svg",
Expand All @@ -186,59 +203,59 @@
"/usr/share/sddm/themes/maya/metadata.desktop",
"/usr/share/sddm/themes/maya/screenshots/hi_IN.png",
"/usr/share/sddm/themes/maya/theme.conf",
"/usr/share/sddm/translations-qt5/ar.qm",
"/usr/share/sddm/translations-qt5/bg.qm",
"/usr/share/sddm/translations-qt5/bn.qm",
"/usr/share/sddm/translations-qt5/ca.qm",
"/usr/share/sddm/translations-qt5/cs.qm",
"/usr/share/sddm/translations-qt5/da.qm",
"/usr/share/sddm/translations-qt5/de.qm",
"/usr/share/sddm/translations-qt5/es.qm",
"/usr/share/sddm/translations-qt5/et.qm",
"/usr/share/sddm/translations-qt5/eu.qm",
"/usr/share/sddm/translations-qt5/fi.qm",
"/usr/share/sddm/translations-qt5/fr.qm",
"/usr/share/sddm/translations-qt5/gl.qm",
"/usr/share/sddm/translations-qt5/he.qm",
"/usr/share/sddm/translations-qt5/hi_IN.qm",
"/usr/share/sddm/translations-qt5/hu.qm",
"/usr/share/sddm/translations-qt5/ie.qm",
"/usr/share/sddm/translations-qt5/is.qm",
"/usr/share/sddm/translations-qt5/it.qm",
"/usr/share/sddm/translations-qt5/ja.qm",
"/usr/share/sddm/translations-qt5/ka.qm",
"/usr/share/sddm/translations-qt5/kk.qm",
"/usr/share/sddm/translations-qt5/ko.qm",
"/usr/share/sddm/translations-qt5/lt.qm",
"/usr/share/sddm/translations-qt5/lv.qm",
"/usr/share/sddm/translations-qt5/nb.qm",
"/usr/share/sddm/translations-qt5/nl.qm",
"/usr/share/sddm/translations-qt5/nn.qm",
"/usr/share/sddm/translations-qt5/oc.qm",
"/usr/share/sddm/translations-qt5/pl.qm",
"/usr/share/sddm/translations-qt5/pt_BR.qm",
"/usr/share/sddm/translations-qt5/pt_PT.qm",
"/usr/share/sddm/translations-qt5/ro.qm",
"/usr/share/sddm/translations-qt5/ru.qm",
"/usr/share/sddm/translations-qt5/sk.qm",
"/usr/share/sddm/translations-qt5/sr.qm",
"/usr/share/sddm/translations-qt5/[email protected]",
"/usr/share/sddm/translations-qt5/[email protected]",
"/usr/share/sddm/translations-qt5/[email protected]",
"/usr/share/sddm/translations-qt5/sv.qm",
"/usr/share/sddm/translations-qt5/tr.qm",
"/usr/share/sddm/translations-qt5/uk.qm",
"/usr/share/sddm/translations-qt5/zh_CN.qm",
"/usr/share/sddm/translations-qt5/zh_TW.qm"
"/usr/share/sddm/translations-qt6/ar.qm",
"/usr/share/sddm/translations-qt6/bg.qm",
"/usr/share/sddm/translations-qt6/bn.qm",
"/usr/share/sddm/translations-qt6/ca.qm",
"/usr/share/sddm/translations-qt6/cs.qm",
"/usr/share/sddm/translations-qt6/da.qm",
"/usr/share/sddm/translations-qt6/de.qm",
"/usr/share/sddm/translations-qt6/es.qm",
"/usr/share/sddm/translations-qt6/et.qm",
"/usr/share/sddm/translations-qt6/eu.qm",
"/usr/share/sddm/translations-qt6/fi.qm",
"/usr/share/sddm/translations-qt6/fr.qm",
"/usr/share/sddm/translations-qt6/gl.qm",
"/usr/share/sddm/translations-qt6/he.qm",
"/usr/share/sddm/translations-qt6/hi_IN.qm",
"/usr/share/sddm/translations-qt6/hu.qm",
"/usr/share/sddm/translations-qt6/ie.qm",
"/usr/share/sddm/translations-qt6/is.qm",
"/usr/share/sddm/translations-qt6/it.qm",
"/usr/share/sddm/translations-qt6/ja.qm",
"/usr/share/sddm/translations-qt6/ka.qm",
"/usr/share/sddm/translations-qt6/kk.qm",
"/usr/share/sddm/translations-qt6/ko.qm",
"/usr/share/sddm/translations-qt6/lt.qm",
"/usr/share/sddm/translations-qt6/lv.qm",
"/usr/share/sddm/translations-qt6/nb.qm",
"/usr/share/sddm/translations-qt6/nl.qm",
"/usr/share/sddm/translations-qt6/nn.qm",
"/usr/share/sddm/translations-qt6/oc.qm",
"/usr/share/sddm/translations-qt6/pl.qm",
"/usr/share/sddm/translations-qt6/pt_BR.qm",
"/usr/share/sddm/translations-qt6/pt_PT.qm",
"/usr/share/sddm/translations-qt6/ro.qm",
"/usr/share/sddm/translations-qt6/ru.qm",
"/usr/share/sddm/translations-qt6/sk.qm",
"/usr/share/sddm/translations-qt6/sr.qm",
"/usr/share/sddm/translations-qt6/[email protected]",
"/usr/share/sddm/translations-qt6/[email protected]",
"/usr/share/sddm/translations-qt6/[email protected]",
"/usr/share/sddm/translations-qt6/sv.qm",
"/usr/share/sddm/translations-qt6/tr.qm",
"/usr/share/sddm/translations-qt6/uk.qm",
"/usr/share/sddm/translations-qt6/zh_CN.qm",
"/usr/share/sddm/translations-qt6/zh_TW.qm"
],
"name": "sddm",
"provides": [
"binary(sddm)",
"binary(sddm-greeter)"
"binary(sddm-greeter-qt6)"
]
}
},
"source-name": "sddm",
"source-release": "1",
"source-release": "2",
"source-version": "0.21.0"
}
67 changes: 67 additions & 0 deletions s/sddm/pkg/make-qt6-themes-default.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
From 52175648f4e1b415f93b24a3ef970983024659f2 Mon Sep 17 00:00:00 2001
From: Neal Gompa <[email protected]>
Date: Wed, 28 Feb 2024 16:47:16 -0500
Subject: [PATCH] Default to Qt6 and always use versioned greeters

Distributors can handle creating an unversioned name if necessary.
---
src/common/ThemeMetadata.cpp | 4 ++--
src/daemon/Greeter.cpp | 3 +--
src/greeter/CMakeLists.txt | 9 +--------
3 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/src/common/ThemeMetadata.cpp b/src/common/ThemeMetadata.cpp
index 2cb3762..003056a 100644
--- a/src/common/ThemeMetadata.cpp
+++ b/src/common/ThemeMetadata.cpp
@@ -28,7 +28,7 @@ namespace SDDM {
QString mainScript { QStringLiteral("Main.qml") };
QString configFile;
QString translationsDirectory { QStringLiteral(".") };
- int qtVersion = 5;
+ int qtVersion = 6;
};

ThemeMetadata::ThemeMetadata(const QString &path, QObject *parent) : QObject(parent), d(new ThemeMetadataPrivate()) {
@@ -61,6 +61,6 @@ namespace SDDM {
d->mainScript = settings.value(QStringLiteral("SddmGreeterTheme/MainScript"), QStringLiteral("Main.qml")).toString();
d->configFile = settings.value(QStringLiteral("SddmGreeterTheme/ConfigFile"), QStringLiteral("theme.conf")).toString();
d->translationsDirectory = settings.value(QStringLiteral("SddmGreeterTheme/TranslationsDirectory"), QStringLiteral(".")).toString();
- d->qtVersion = settings.value(QStringLiteral("SddmGreeterTheme/QtVersion"), 5).toInt();
+ d->qtVersion = settings.value(QStringLiteral("SddmGreeterTheme/QtVersion"), 6).toInt();
}
}
diff --git a/src/daemon/Greeter.cpp b/src/daemon/Greeter.cpp
index 07fccde..5a956b6 100644
--- a/src/daemon/Greeter.cpp
+++ b/src/daemon/Greeter.cpp
@@ -82,8 +82,7 @@ namespace SDDM {

QString Greeter::greeterPathForQt(int qtVersion)
{
- const QString suffix = qtVersion == 5 ? QString() : QStringLiteral("-qt%1").arg(qtVersion);
- return QStringLiteral(BIN_INSTALL_DIR "/sddm-greeter%1").arg(suffix);
+ return QStringLiteral(BIN_INSTALL_DIR "/sddm-greeter-qt%1").arg(qtVersion);
}

bool Greeter::start() {
diff --git a/src/greeter/CMakeLists.txt b/src/greeter/CMakeLists.txt
index 72769e4..524368d 100644
--- a/src/greeter/CMakeLists.txt
+++ b/src/greeter/CMakeLists.txt
@@ -1,11 +1,4 @@
-if(QT_MAJOR_VERSION EQUAL "5")
- # Keep the unversioned name for Qt5. When upgrading SDDM, the old daemon
- # might still be running and only know about "sddm-greeter". Keeping the
- # previous name around also helps users calling it directly.
- set(GREETER_TARGET sddm-greeter)
-else()
- set(GREETER_TARGET sddm-greeter-qt${QT_MAJOR_VERSION})
-endif()
+set(GREETER_TARGET sddm-greeter-qt${QT_MAJOR_VERSION})

message(STATUS "Building greeter for Qt ${QT_MAJOR_VERSION} as ${GREETER_TARGET}")

--
2.43.0

Loading

0 comments on commit f240c29

Please sign in to comment.