Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plasma5: 5.22.0 -> 5.23.1 #139657

Merged
merged 18 commits into from
Oct 28, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions pkgs/desktops/plasma-5/breeze-gtk.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ mkDerivation {
name = "breeze-gtk";
nativeBuildInputs = [ extra-cmake-modules sassc python3 python3.pkgs.pycairo breeze-qt5 ];
buildInputs = [ qtbase ];
patches = [
./patches/0001-fix-add-executable-bit.patch
];
postPatch = ''
sed -i cmake/FindGTKEngine.cmake \
-e "s|\''${KDE_INSTALL_FULL_LIBDIR}|${getLib gtk2}/lib|"
Expand Down
2 changes: 1 addition & 1 deletion pkgs/desktops/plasma-5/fetch.sh
Original file line number Diff line number Diff line change
@@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/plasma/5.22.5/ -A '*.tar.xz' )
WGET_ARGS=( https://download.kde.org/stable/plasma/5.23.1/ -A '*.tar.xz' )
5 changes: 3 additions & 2 deletions pkgs/desktops/plasma-5/kwayland-integration.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@
mkDerivation, lib,
extra-cmake-modules,
kguiaddons, kidletime, kwayland, kwindowsystem, qtbase,
wayland-protocols, wayland-scanner, wayland
}:

mkDerivation {
name = "kwayland-integration";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kguiaddons kidletime kwindowsystem kwayland qtbase ];
nativeBuildInputs = [ extra-cmake-modules wayland-scanner ];
buildInputs = [ kguiaddons kidletime kwindowsystem kwayland qtbase wayland-protocols wayland ];
}
14 changes: 1 addition & 13 deletions pkgs/desktops/plasma-5/kwin/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
mkDerivation, lib, fetchpatch,
mkDerivation, lib,
extra-cmake-modules, kdoctools,

epoxy, lcms2, libICE, libSM, libcap, libdrm, libinput, libxkbcommon, mesa,
Expand Down Expand Up @@ -40,18 +40,6 @@ mkDerivation {
./0002-xwayland.patch
./0003-plugins-qpa-allow-using-nixos-wrapper.patch
./0001-NixOS-Unwrap-executable-name-for-.desktop-search.patch
# Fix build against libglvnd 1.3.4+
# Remove with release 5.22.90
(fetchpatch {
CertainLach marked this conversation as resolved.
Show resolved Hide resolved
url = "https://invent.kde.org/plasma/kwin/-/commit/839710201c389b7f4ed248cb3818e755a37ce977.patch";
sha256 = "09rldhy0sbmqdfpyjzwm20cwnmrmj0w2751vyi5xlr414g0rzyc1";
})
# Fixup previous patch for i686
# Remove with release 5.22.90
(fetchpatch {
url = "https://invent.kde.org/plasma/kwin/-/commit/38e24ecd6416a975db0989c21b70d6a4cc242f35.patch";
sha256 = "0zsjmzswcnvfd2jm1c8i9aijpbap1141mjv6y4j282bplyqlp966";
})
];
CXXFLAGS = [
''-DNIXPKGS_XWAYLAND=\"${lib.getBin xwayland}/bin/Xwayland\"''
Expand Down
9 changes: 6 additions & 3 deletions pkgs/desktops/plasma-5/libkscreen/default.nix
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
{
mkDerivation, lib, propagate,
extra-cmake-modules,
kwayland, libXrandr, qtbase, qtx11extras
qtbase,
wayland-scanner, kwayland,
plasma-wayland-protocols, wayland,
libXrandr, qtx11extras
}:

mkDerivation {
name = "libkscreen";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kwayland libXrandr qtx11extras ];
nativeBuildInputs = [ extra-cmake-modules wayland-scanner ];
buildInputs = [ kwayland plasma-wayland-protocols wayland libXrandr qtx11extras ];
outputs = [ "out" "dev" ];
patches = [
./libkscreen-backends-path.patch
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ index efed8ff..841761a 100644
+++ b/processui/scripting.cpp
@@ -167,7 +167,7 @@ void Scripting::loadContextMenu() {
QStringList scripts;
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, "ksysguard/scripts/", QStandardPaths::LocateDirectory);
Q_FOREACH (const QString& dir, dirs) {
const QStringList dirs =
QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QStringLiteral("ksysguard/scripts/"), QStandardPaths::LocateDirectory);
Q_FOREACH (const QString &dir, dirs) {
- QDirIterator it(dir, QStringList() << QStringLiteral("*.desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
+ QDirIterator it(dir, QStringList() << QStringLiteral("*.desktop"), QDir::NoFilter, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
while (it.hasNext()) {
scripts.append(it.next());
}
--
2.5.2

4 changes: 2 additions & 2 deletions pkgs/desktops/plasma-5/libksysguard/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
extra-cmake-modules,
kauth, kcompletion, kconfig, kconfigwidgets, kcoreaddons, ki18n, kiconthemes,
knewstuff, kservice, kwidgetsaddons, kwindowsystem, plasma-framework,
qtbase, qtscript, qtwebengine, qtx11extras, libnl
qtbase, qtscript, qtwebengine, qtx11extras, libnl, libpcap, qtsensors, lm_sensors,
}:

mkDerivation {
Expand All @@ -15,7 +15,7 @@ mkDerivation {
buildInputs = [
kauth kconfig ki18n kiconthemes kwindowsystem kcompletion kconfigwidgets
kcoreaddons kservice kwidgetsaddons plasma-framework qtscript qtx11extras
qtwebengine knewstuff libnl
qtwebengine knewstuff libnl libpcap qtsensors lm_sensors
];
outputs = [ "bin" "dev" "out" ];
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
From da6a4651f74625f4c7f3c31f1125cfa4e774780b Mon Sep 17 00:00:00 2001
From: Yaroslav Bolyukin <iam@lach.pw>
Date: Mon, 27 Sep 2021 22:45:58 +0300
Subject: [PATCH] fix: add executable bit

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
---
src/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 79ff12d..4f3d746 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -2,7 +2,7 @@ file(GLOB_RECURSE SCSS_SOURCES "*.scss")
file(GLOB CSS_SOURCES "*.css")
file(GLOB_RECURSE GTK2_SOURCES "gtk2/*")

-configure_file(build_theme.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/build_theme.sh @ONLY)
+configure_file(build_theme.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/build_theme.sh FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE @ONLY)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick: Wouldn't better to simply add a chmod +x on preBuild or something like that, instead of a full patch? Would be easier to overwrite/inspect and less prone to getting out of date.


set(SOURCES
${SCSS_SOURCES}
--
2.33.0
7 changes: 1 addition & 6 deletions pkgs/desktops/plasma-5/plasma-desktop/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
mkDerivation, lib, fetchpatch,
mkDerivation, lib,
extra-cmake-modules, kdoctools,

boost, fontconfig, ibus, libXcursor, libXft, libcanberra_kde, libpulseaudio,
Expand Down Expand Up @@ -36,11 +36,6 @@ mkDerivation {
patches = [
./hwclock-path.patch
./tzdir.patch
# https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/563
(fetchpatch {
CertainLach marked this conversation as resolved.
Show resolved Hide resolved
url = "https://invent.kde.org/plasma/plasma-desktop/-/commit/8d9bf2032b8a2e5de75edf5713c42866f5b80649.patch";
sha256 = "sha256-2jqqFjBljbhf7I+fTsIvuFs3Ic662KTKRnbcSm5Jing=";
})
];
CXXFLAGS = [
''-DNIXPKGS_HWCLOCK=\"${lib.getBin util-linux}/sbin/hwclock\"''
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ index 2f11ba1d..310f11b4 100644
connect(m_ui->cmbProxyType, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this, &OpenVpnAdvancedWidget::proxyTypeChanged);

// start openVPN process and get its cipher list
- const QString openVpnBinary = QStandardPaths::findExecutable("openvpn", QStringList() << "/sbin" << "/usr/sbin");
- const QString openVpnBinary = QStandardPaths::findExecutable("openvpn", QStringList{"/sbin", "/usr/sbin"});
+ const QString openVpnBinary = "@openvpn@/bin/openvpn";
const QStringList ciphersArgs(QLatin1String("--show-ciphers"));
const QStringList versionArgs(QLatin1String("--version"));
Expand Down
4 changes: 0 additions & 4 deletions pkgs/desktops/plasma-5/plasma-nm/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,6 @@ mkDerivation {
mobile-broadband-provider-info openconnect
];
patches = [
(substituteAll {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this patch no longer needed?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mobile-broadband path is now fetched from CMake, instead of being hardcoded; this makes it work ootb on nixos

src = ./0001-mobile-broadband-provider-info-path.patch;
mobile_broadband_provider_info = mobile-broadband-provider-info;
})
(substituteAll {
src = ./0002-openvpn-binary-path.patch;
inherit openvpn;
Expand Down
75 changes: 26 additions & 49 deletions pkgs/desktops/plasma-5/plasma-workspace/0001-startkde.patch
Original file line number Diff line number Diff line change
Expand Up @@ -4,56 +4,56 @@ Date: Mon, 7 Sep 2020 18:09:52 +0100
Subject: [PATCH] startkde

---
startkde/plasma-session/startup.cpp | 2 +-
startkde/startplasma-waylandsession.cpp | 2 +-
startkde/startplasma-x11.cpp | 2 +-
startkde/startplasma.cpp | 16 ++++++++--------
4 files changed, 11 insertions(+), 11 deletions(-)
startkde/plasma-session/startup.cpp | 2 +-
startkde/startplasma-waylandsession.cpp | 2 +-
startkde/startplasma-x11.cpp | 2 +-
startkde/startplasma.cpp | 8 ++++----
4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/startkde/plasma-session/startup.cpp b/startkde/plasma-session/startup.cpp
index c3e77d4..88cb0e9 100644
index 270744053..356160e96 100644
--- a/startkde/plasma-session/startup.cpp
+++ b/startkde/plasma-session/startup.cpp
@@ -223,7 +223,7 @@ Startup::Startup(QObject *parent)
upAndRunning(QStringLiteral("ksmserver"));
@@ -143,7 +143,7 @@ Startup::Startup(QObject *parent)
const AutoStart autostart;

// Keep for KF5; remove in KF6 (KInit will be gone then)
- QProcess::execute(QStringLiteral(CMAKE_INSTALL_FULL_LIBEXECDIR_KF5 "/start_kdeinit_wrapper"), QStringList());
+ QProcess::execute(QStringLiteral(NIXPKGS_START_KDEINIT_WRAPPER), QStringList());

KJob *phase1;
QProcessEnvironment kdedProcessEnv;
KJob *windowManagerJob = nullptr;
if (qEnvironmentVariable("XDG_SESSION_TYPE") != QLatin1String("wayland")) {
diff --git a/startkde/startplasma-waylandsession.cpp b/startkde/startplasma-waylandsession.cpp
index 4fbfe18..6ba916c 100644
index 3a054a04f..b2e7ab3fb 100644
--- a/startkde/startplasma-waylandsession.cpp
+++ b/startkde/startplasma-waylandsession.cpp
@@ -65,7 +65,7 @@ int main(int argc, char **argv)
waitForKonqi();
@@ -33,7 +33,7 @@ int main(int argc, char **argv)
out << "startplasma-waylandsession: Shutting down...\n";

// Keep for KF5; remove in KF6 (KInit will be gone then)
- runSync(QStringLiteral("kdeinit5_shutdown"), {});
+ runSync(QStringLiteral(NIXPKGS_KDEINIT5_SHUTDOWN), {});

cleanupX11();
out << "startplasma-waylandsession: Done.\n";

diff --git a/startkde/startplasma-x11.cpp b/startkde/startplasma-x11.cpp
index 4ddf9f8..e0e59cd 100644
index d6b2c5439..534eeb0e5 100644
--- a/startkde/startplasma-x11.cpp
+++ b/startkde/startplasma-x11.cpp
@@ -110,7 +110,7 @@ int main(int argc, char **argv)

@@ -90,7 +90,7 @@ int main(int argc, char **argv)
out << "startkde: Shutting down...\n";

// Keep for KF5; remove in KF6 (KInit will be gone then)
- runSync(QStringLiteral("kdeinit5_shutdown"), {});
+ runSync(QStringLiteral(NIXPKGS_KDEINIT5_SHUTDOWN), {});

cleanupPlasmaEnvironment();
cleanupX11();
cleanupPlasmaEnvironment(oldSystemdEnvironment);

diff --git a/startkde/startplasma.cpp b/startkde/startplasma.cpp
index 9809197..1250e3e 100644
index 008fdfcaf..72468f21c 100644
--- a/startkde/startplasma.cpp
+++ b/startkde/startplasma.cpp
@@ -46,7 +46,7 @@ QTextStream out(stderr);
@@ -39,7 +39,7 @@ QTextStream out(stderr);
void messageBox(const QString &text)
{
out << text;
Expand All @@ -62,38 +62,16 @@ index 9809197..1250e3e 100644
}

QStringList allServices(const QLatin1String &prefix)
@@ -267,8 +267,8 @@ void setupX11()
@@ -340,7 +340,7 @@ void setupX11()
// If the user has overwritten fonts, the cursor font may be different now
// so don't move this up.

- runSync(QStringLiteral("xsetroot"), {QStringLiteral("-cursor_name"), QStringLiteral("left_ptr")});
- runSync(QStringLiteral("xprop"),
+ runSync(QStringLiteral(NIXPKGS_XSETROOT), {QStringLiteral("-cursor_name"), QStringLiteral("left_ptr")});
+ runSync(QStringLiteral(NIXPKGS_XPROP),
{QStringLiteral("-root"),
QStringLiteral("-f"),
QStringLiteral("KDE_FULL_SESSION"),
@@ -276,7 +276,7 @@ void setupX11()
QStringLiteral("-set"),
QStringLiteral("KDE_FULL_SESSION"),
QStringLiteral("true")});
- runSync(QStringLiteral("xprop"),
+ runSync(QStringLiteral(NIXPKGS_XPROP),
{QStringLiteral("-root"),
QStringLiteral("-f"),
QStringLiteral("KDE_SESSION_VERSION"),
@@ -288,8 +288,8 @@ void setupX11()

void cleanupX11()
{
- runSync(QStringLiteral("xprop"), {QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_FULL_SESSION")});
- runSync(QStringLiteral("xprop"), {QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_SESSION_VERSION")});
+ runSync(QStringLiteral(NIXPKGS_XPROP), {QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_FULL_SESSION")});
+ runSync(QStringLiteral(NIXPKGS_XPROP), {QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_SESSION_VERSION")});
}

// TODO: Check if Necessary
@@ -321,7 +321,7 @@ void setupFontDpi()
void cleanupPlasmaEnvironment(const std::optional<QStringList> &oldSystemdEnvironment)
@@ -403,7 +403,7 @@ void setupFontDpi()
// TODO port to c++?
const QByteArray input = "Xft.dpi: " + QByteArray::number(fontsCfg.readEntry("forceFontDPI", 0));
QProcess p;
Expand All @@ -102,7 +80,7 @@ index 9809197..1250e3e 100644
p.setProcessChannelMode(QProcess::ForwardedChannels);
p.write(input);
p.closeWriteChannel();
@@ -343,7 +343,7 @@ QProcess *setupKSplash()
@@ -425,7 +425,7 @@ QProcess *setupKSplash()
KConfigGroup ksplashCfg = cfg.group("KSplash");
if (ksplashCfg.readEntry("Engine", QStringLiteral("KSplashQML")) == QLatin1String("KSplashQML")) {
p = new QProcess;
Expand All @@ -112,5 +90,4 @@ index 9809197..1250e3e 100644
}
return p;
--
2.30.0

2.33.0
8 changes: 7 additions & 1 deletion pkgs/desktops/plasma-5/plasma-workspace/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
mkDerivation, lib,
mkDerivation, lib, fetchpatch,

extra-cmake-modules, kdoctools,

Expand Down Expand Up @@ -52,6 +52,12 @@ mkDerivation {
patches = [
./0001-startkde.patch
./0002-absolute-wallpaper-install-dir.patch
# Included in 5.23.2
(fetchpatch {
name = "ignore-placeholder-screens";
url = "https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1125.patch";
sha256 = "sha256-lvcAxb301lQbfEKPcxMlfap9g7TjHOk50ZYX91RC7gY=";
})
];

# QT_INSTALL_BINS refers to qtbase, and qdbus is in qttools
Expand Down
Loading