kde update done

This commit is contained in:
Ali Riza KESKIN committed 2025-10-18 19:03:12 +00:00
1 parent 25e30c3cd9
commit 1d2acf2f58
12 files changed
+130 -289

No files matched your search

-137
View File
@@ -1,137 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8921996..64ae5ee 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -80,7 +80,6 @@ find_package(Wayland REQUIRED COMPONENTS Client)
find_package(PlasmaWaylandProtocols REQUIRED)
find_package(LayerShellQt REQUIRED)
find_package(KPipeWire)
-find_package(OpenCV REQUIRED core imgproc)
set_package_properties(KPipeWire PROPERTIES DESCRIPTION
"Used to record pipewire streams into a file"
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 66fda75..2565192 100755
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -89,11 +89,6 @@ ki18n_wrap_ui(spectacle
Gui/SettingsDialog/VideoSaveOptions.ui
)
-# Needed to compile with OpenCV
-target_compile_options (spectacle PRIVATE -fexceptions)
-
-target_include_directories(spectacle PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src ${OpenCV_INCLUDE_DIRS})
-
target_link_libraries(spectacle PRIVATE
Qt::Concurrent
Qt::DBus
@@ -121,7 +116,6 @@ target_link_libraries(spectacle PRIVATE
K::KPipeWireRecord
Wayland::Client
LayerShellQt::Interface
- ${OpenCV_LIBRARIES}
)
set_source_files_properties(Gui/QmlUtils.qml PROPERTIES
diff --git a/src/QtCV.h b/src/QtCV.h
deleted file mode 100755
index 2b87599..0000000
--- a/src/QtCV.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/* SPDX-FileCopyrightText: 2024 Noah Davis <noahadvs@gmail.com>
- * SPDX-License-Identifier: LGPL-2.0-or-later
- */
-
-#pragma once
-
-#include <QImage>
-#include <opencv2/opencv.hpp>
-
-/**
- * Convenience functions for using OpenCV with Qt APIs.
- */
-namespace QtCV
-{
-static constexpr int INVALID_MAT_TYPE = -1;
-static_assert(CV_8U == 0);
-static_assert(std::same_as<decltype(CV_8U), int>);
-
-inline constexpr int matType(QPixelFormat::TypeInterpretation typeInterpretation)
-{
- switch (typeInterpretation) {
- case QPixelFormat::UnsignedByte:
- return CV_8U;
- case QPixelFormat::UnsignedShort:
- return CV_16U;
- case QPixelFormat::FloatingPoint:
- return CV_32F;
- default:
- return INVALID_MAT_TYPE;
- }
-}
-
-inline constexpr int matType(QPixelFormat pixelFormat)
-{
- const auto baseType = matType(pixelFormat.typeInterpretation());
- if (baseType == INVALID_MAT_TYPE) {
- return INVALID_MAT_TYPE;
- }
- return CV_MAKETYPE(baseType, pixelFormat.channelCount());
-}
-
-// Get a cv::Mat that reuses the data of a QImage.
-// Use cv::Mat::clone() if the owner of the data might be destroyed before you're done using it.
-// Expects an image with the right format. If the image has an ARGB32 format (premultiplied or not),
-// it needs to be converted to BGRA. RGBX8888 and RGBA8888 formats shouldn't need to be converted.
-inline cv::Mat qImageToMat(QImage &image)
-{
- const auto type = matType(image.pixelFormat());
- if (type == INVALID_MAT_TYPE) {
- return {};
- }
- // Use the constructor with cv::Size as the first arg to avoid type ambiguity in the args.
- return cv::Mat(cv::Size{image.width(), image.height()}, type, image.bits(), image.bytesPerLine());
-}
-
-// Same as qImageToMat, but with cv::Ptr (subclass of std::shared_ptr).
-inline cv::Ptr<cv::Mat> qImageToMatPtr(QImage &image)
-{
- const auto type = matType(image.pixelFormat());
- if (type == INVALID_MAT_TYPE) {
- return nullptr;
- }
- return cv::makePtr<cv::Mat>(cv::Size{image.width(), image.height()}, type, image.bits(), image.bytesPerLine());
-}
-
-// For use with filters that require odd kernel dimensions.
-template<typename Number>
-inline auto sigmaToKSize(Number value)
-{
- return cvRound(value + 1) | 1;
-}
-
-// Stack blur looks like Gaussian blur, but doesn't become as slow with larger kernel sizes.
-// Stack blur is unavailable in OpenCV versions before 4.7.
-// We need this because of the FreeBSD 14 CI pipeline. FreeBSD 14 is only on OpenCV 4.6.
-inline void stackOrGaussianBlurCompatibility(cv::InputArray &in, cv::OutputArray &out, cv::Size ksize, double sigmaX, double sigmaY = 0, [[maybe_unused]] int borderType = cv::BORDER_DEFAULT)
-{
-#if CV_MAJOR_VERSION > 4 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION >= 7)
- // Replicate the behavior of cv::GaussianBlur with automatic kernel size.
- const auto gaussianKSizeFactor = (in.depth() == CV_8U ? 3 : 4) * 2;
- if( ksize.width <= 0 && sigmaX > 0 ) {
- ksize.width = sigmaToKSize(sigmaX * gaussianKSizeFactor);
- }
- if( ksize.height <= 0 && sigmaY > 0 ) {
- ksize.height = sigmaToKSize(sigmaY * gaussianKSizeFactor);
- }
- cv::stackBlur(in, out, ksize);
-#else
- cv::GaussianBlur(in, out, ksize, sigmaX, sigmaY, borderType);
-#endif
-}
-}
-
-
-
-86
View File
@@ -1,86 +0,0 @@
diff --git a/src/Gui/Annotations/EffectUtils.cpp b/src/Gui/Annotations/EffectUtils.cpp
index 7d505a5..674a24f 100755
--- a/src/Gui/Annotations/EffectUtils.cpp
+++ b/src/Gui/Annotations/EffectUtils.cpp
@@ -5,7 +5,6 @@
*/
#include "EffectUtils.h"
-#include "QtCV.h"
#include <QDebug>
#include <QPainter>
@@ -147,11 +146,8 @@ QImage shapeShadow(const Traits::OptTuple &traits, qreal devicePixelRatio)
p.drawText(geometryTrait->path.boundingRect(), textTrait->textFlags(), textTrait->text());
}
p.end();
- auto mat = QtCV::qImageToMat(shadow);
const qreal sigma = Traits::Shadow::radius * devicePixelRatio;
- const int ksize = QtCV::sigmaToKSize(sigma);
// Do this before converting to Alpha8 because stackBlur gets distorted with Alpha8.
- QtCV::stackOrGaussianBlurCompatibility(mat, mat, {ksize, ksize}, sigma, sigma);
// We only want black shadows with opacity, so we only need black and 8 bits of alpha.
// If we don't do this, color emojis won't have black semi-transparent shadows.
shadow.convertTo(QImage::Format_Alpha8);
diff --git a/src/Gui/Annotations/Traits.cpp b/src/Gui/Annotations/Traits.cpp
index 396d341..807dbc1 100755
--- a/src/Gui/Annotations/Traits.cpp
+++ b/src/Gui/Annotations/Traits.cpp
@@ -5,7 +5,6 @@
#include "Traits.h"
#include "Geometry.h"
-#include "QtCV.h"
#include "settings.h"
#include <QLocale>
#include <QUuid>
@@ -87,7 +86,6 @@ QImage Traits::ImageEffects::Blur::image(const std::function<QImage()> &getImage
}
// RGBA is better for use with OpenCV
m_backingStoreCache.convertTo(QImage::Format_RGBA8888_Premultiplied);
- auto mat = QtCV::qImageToMat(m_backingStoreCache);
// Below this, the effect is nearly invisible.
static const qreal min = 0.5;
// Above this, glitches with color splotches happen.
@@ -96,7 +94,6 @@ QImage Traits::ImageEffects::Blur::image(const std::function<QImage()> &getImage
const qreal dynamicMin = 1 * dpr;
const qreal dynamicMax = 16 * dpr;
const qreal sigma = std::clamp(m_strength * (dynamicMax - dynamicMin) + dynamicMin, min, max);
- QtCV::stackOrGaussianBlurCompatibility(mat, mat, {}, sigma, sigma);
m_backingStoreCache.setDevicePixelRatio(dpr);
m_backingStoreCache.setText(strengthKey, strengthString(m_strength));
}
diff --git a/src/Platforms/ImagePlatformKWin.cpp b/src/Platforms/ImagePlatformKWin.cpp
index 237130c..69fd9d2 100755
--- a/src/Platforms/ImagePlatformKWin.cpp
+++ b/src/Platforms/ImagePlatformKWin.cpp
@@ -7,7 +7,6 @@
#include "ImagePlatformKWin.h"
#include "ExportManager.h"
#include "Geometry.h"
-#include "QtCV.h"
#include "DebugUtils.h"
#include "ImageMetaData.h"
@@ -107,21 +106,6 @@ QImage combinedImage(const QList<QImage> &images)
// Not sure what to do if we end up having different formats for different screens.
QImage finalImage{imageRect.size().toSize() * finalDpr, finalFormat};
finalImage.fill(Qt::transparent);
- auto mainMat = QtCV::qImageToMat(finalImage);
- for (auto &image : images) {
- auto rgbaImage = image.format() == finalImage.format() ? image : image.convertedTo(finalFormat);
- const auto mat = QtCV::qImageToMat(rgbaImage);
- // Region Of Interest to put the image in the main image.
- const auto pos = ImageMetaData::logicalXY(rgbaImage) * finalDpr;
- const auto size = rgbaImage.deviceIndependentSize() * finalDpr;
- // Truncate to ints instead of rounding to prevent ROI from going out of bounds.
- const cv::Rect rect(pos.x(), pos.y(), size.width(), size.height());
- const auto imageDpr = image.devicePixelRatio();
- const bool hasIntDpr = static_cast<int>(imageDpr) == imageDpr;
- const auto interpolation = hasIntDpr ? cv::INTER_AREA : cv::INTER_LANCZOS4;
- // Will just copy if there's no difference in size
- cv::resize(mat, mainMat(rect), rect.size(), 0, 0, interpolation);
- }
finalImage.setDevicePixelRatio(finalDpr);
ImageMetaData::setSubGeometryList(finalImage, geometryList);
return finalImage;
-30
View File
@@ -1,30 +0,0 @@
From 7f0a1cc0e8afb1589fb6f37e17a80c824f17a52f Mon Sep 17 00:00:00 2001
From: Harald Sitter <sitter@kde.org>
Date: Tue, 15 Oct 2024 10:13:51 +0200
Subject: [PATCH] work around bugged qmlcachegen
BUG: 494281
---
CMakeLists.txt | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 41297b6f..9290cf52 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -58,6 +58,12 @@ find_package(
)
qt_policy(SET QTP0001 NEW)
+if(Qt6_VERSION VERSION_EQUAL 6.8.0)
+ # https://bugreports.qt.io/browse/QTBUG-129797
+ message(NOTICE "Qt6_VERSION: ${Qt6_VERSION} detected. Enabling CAST_FROM_ASCII")
+ remove_definitions(-DQT_NO_CAST_FROM_ASCII)
+endif()
+
find_package(
KF6 ${KF_MIN_VERSION} REQUIRED
CoreAddons
--
GitLab
+99
View File
@@ -0,0 +1,99 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dc4b770..f8eac22 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -88,7 +88,7 @@ find_package(Wayland REQUIRED COMPONENTS Client)
find_package(PlasmaWaylandProtocols REQUIRED)
find_package(LayerShellQt REQUIRED)
find_package(KPipeWire)
-find_package(OpenCV REQUIRED core imgproc)
+#find_package(OpenCV REQUIRED core imgproc)
set_package_properties(KPipeWire PROPERTIES DESCRIPTION
"Used to record pipewire streams into a file"
diff --git a/src/Gui/Annotations/EffectUtils.cpp b/src/Gui/Annotations/EffectUtils.cpp
index 7d505a5..a61e4b2 100755
--- a/src/Gui/Annotations/EffectUtils.cpp
+++ b/src/Gui/Annotations/EffectUtils.cpp
@@ -5,7 +5,7 @@
*/
#include "EffectUtils.h"
-#include "QtCV.h"
+//#include "QtCV.h"
#include <QDebug>
#include <QPainter>
@@ -147,6 +147,7 @@ QImage shapeShadow(const Traits::OptTuple &traits, qreal devicePixelRatio)
p.drawText(geometryTrait->path.boundingRect(), textTrait->textFlags(), textTrait->text());
}
p.end();
+ /*
auto mat = QtCV::qImageToMat(shadow);
const qreal sigma = Traits::Shadow::radius * devicePixelRatio;
const int ksize = QtCV::sigmaToKSize(sigma);
@@ -155,5 +156,6 @@ QImage shapeShadow(const Traits::OptTuple &traits, qreal devicePixelRatio)
// We only want black shadows with opacity, so we only need black and 8 bits of alpha.
// If we don't do this, color emojis won't have black semi-transparent shadows.
shadow.convertTo(QImage::Format_Alpha8);
+ */
return shadow;
}
diff --git a/src/Gui/Annotations/Traits.cpp b/src/Gui/Annotations/Traits.cpp
index 396d341..7049fe6 100755
--- a/src/Gui/Annotations/Traits.cpp
+++ b/src/Gui/Annotations/Traits.cpp
@@ -5,7 +5,7 @@
#include "Traits.h"
#include "Geometry.h"
-#include "QtCV.h"
+//#include "QtCV.h"
#include "settings.h"
#include <QLocale>
#include <QUuid>
@@ -81,6 +81,7 @@ QImage Traits::ImageEffects::Blur::image(const std::function<QImage()> &getImage
|| m_backingStoreCache.devicePixelRatio() != dpr //
|| m_backingStoreCache.text(strengthKey).toDouble() != m_strength)
&& getImage) {
+/*
m_backingStoreCache = getImage();
if (m_backingStoreCache.isNull()) {
return m_backingStoreCache;
@@ -99,6 +100,7 @@ QImage Traits::ImageEffects::Blur::image(const std::function<QImage()> &getImage
QtCV::stackOrGaussianBlurCompatibility(mat, mat, {}, sigma, sigma);
m_backingStoreCache.setDevicePixelRatio(dpr);
m_backingStoreCache.setText(strengthKey, strengthString(m_strength));
+*/
}
QRect copyRect = G::rectScaled(rect, m_backingStoreCache.devicePixelRatio()).toAlignedRect();
if (copyRect.size() != m_backingStoreCache.size()) {
diff --git a/src/Platforms/ImagePlatformKWin.cpp b/src/Platforms/ImagePlatformKWin.cpp
index 4105aae..6f94a71 100755
--- a/src/Platforms/ImagePlatformKWin.cpp
+++ b/src/Platforms/ImagePlatformKWin.cpp
@@ -7,7 +7,7 @@
#include "ImagePlatformKWin.h"
#include "ExportManager.h"
#include "Geometry.h"
-#include "QtCV.h"
+//#include "QtCV.h"
#include "DebugUtils.h"
#include "ImageMetaData.h"
@@ -107,6 +107,7 @@ QImage combinedImage(const QList<QImage> &images)
// Not sure what to do if we end up having different formats for different screens.
QImage finalImage{imageRect.size().toSize() * finalDpr, finalFormat};
finalImage.fill(Qt::transparent);
+ /*
auto mainMat = QtCV::qImageToMat(finalImage);
for (auto &image : images) {
// Region Of Interest to put the image in the main image.
@@ -126,6 +127,7 @@ QImage combinedImage(const QList<QImage> &images)
// Will just copy if there's no difference in size
cv::resize(mat, mainMat(rect), rect.size(), 0, 0, interpolation);
}
+ */
finalImage.setDevicePixelRatio(finalDpr);
ImageMetaData::setSubGeometryList(finalImage, geometryList);
return finalImage;
+7 -13
View File
@@ -1,22 +1,18 @@
#!/usr/bin/env bash
name='spectacle'
release='2'
version='24.08.2'
release='3'
version='6.4.5'
url='https://kde.org/applications/utilities/org.kde.spectacle'
description='Application for capturing desktop screenshots'
email='osman.coskun95@gmail.com'
maintainer='mergin'
license=('GPLv3')
source=("https://download.kde.org/stable/release-service/$version/src/spectacle-$version.tar.xz"
000-no-opencv.patch
001-no-opencv.patch
002-fix-qmlcache.patch
spectacle.desktop)
source=("https://download.kde.org/stable/plasma/$version/spectacle-$version.tar.xz"
"remove-opencv.patch"
"spectacle.desktop")
depends=(qt6-base kwayland kpipewire)
makedepends=(extra-cmake-modules ki18n kdoctools)
sha256sums=('3f90f8cfe3359ad94f5bb0025a9251805a092c5892cd2a891965c21a0984cbdf'
'SKIP'
'SKIP'
sha256sums=('42a56f0593c0c5c7b661088ef6e6e32a0ea248354fbbfdb4a20f3a21ba5540e7'
'SKIP'
'SKIP')
group=(kde.apps)
@@ -29,9 +25,7 @@ export PATH=$PATH:/usr/lib64/qt6/libexec/rcc
export LANG=en_US.UTF-8
prepare(){
patch -Np1 -i ../000-no-opencv.patch
patch -Np1 -i ../001-no-opencv.patch
patch -Np1 -i ../002-fix-qmlcache.patch
patch -Np1 -i ../remove-opencv.patch
}
setup(){
+3 -1
View File
@@ -8,7 +8,9 @@ email='akarsu@protonmail.com'
maintainer='akarsu'
license=('GPLv2')
source=("https://download.kde.org/stable/plasma/${version}/bluedevil-${version}.tar.xz")
depends=(bluez-qt kdeclarative)
depends=(bluez-qt kdeclarative kcmutils kconfig
kcoreaddons kdbusaddons ki18n kio kjobwidgets knotifications
kwidgetsaddons kwindowsystem qt6-declarative)
makedepends=(ksvg extra-cmake-modules kdoctools kcmutils)
sha256sums=('fb3a07c79ea980cd55f92ad03b8ceb2595fd7a18d70f6fd2c4d9e3538a84d71e')
group=(kde.extra)
+2 -2
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
name='polkit-kde-agent'
release='4'
version='6.2.0'
version='6.4.5'
url='https://kde.org/plasma-desktop/'
description='Daemon providing a polkit authentication UI for KDE'
email='aliriza.keskin@pardus.org.tr'
@@ -10,7 +10,7 @@ license=('GPLv3')
source=("https://download.kde.org/stable/plasma/$version/polkit-kde-agent-1-$version.tar.xz")
depends=(polkit kiconthemes kdbusaddons kcrash)
makedepends=(extra-cmake-modules kdoctools)
sha256sums=('c6650c57de4e1d59cc5148edb2b8d7f17a66c20785613ec30535174a7b6dcb10')
sha256sums=('5b5d771660f5209295a65afdcb3e117c1cc9cd7c1893d0c9b68ad0c531308301')
group=(kde.extra)
uses=()
arch=('x86_64')
+3 -3
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
name='purpose'
release='4'
version='6.7.0'
release='5'
version='6.18.0'
url='https://community.kde.org/Frameworks'
description='Framework for providing abstractions to get the developer s purposes fulfilled'
email='brkt8khn@gmail.com'
@@ -10,7 +10,7 @@ license=('LGPL')
source=("https://download.kde.org/stable/frameworks/${version%.*}/purpose-${version}.tar.xz")
depends=(kconfig kcoreaddons kcmutils ki18n kio kirigami knotifications kservice qt6-base qt6-declarative)
makedepends=(intltool extra-cmake-modules)
sha256sums=('4f8bbf19022c70df1dc345a4abd81677a505a2e8fef643311287fe8e9212d56a')
sha256sums=('a428e4f495658240899e02f15b7a9230e3c33069723b43e1734c21fa1a23b825')
group=(kde.frameworks)
uses=()
arch=('x86_64')
+3 -3
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
name='qqc2-desktop-style'
release='4'
version='6.7.0'
release='5'
version='6.18.0'
url='https://community.kde.org/Frameworks'
description='A style for Qt Quick Controls 2 to make it follow your desktop theme'
email='brkt8khn@gmail.com'
@@ -10,7 +10,7 @@ license=('LGPL')
source=("https://download.kde.org/stable/frameworks/${version%.*}/qqc2-desktop-style-${version}.tar.xz")
depends=(kcolorscheme kconfig kirigami kiconthemes qt6-base qt6-declarative sonnet)
makedepends=(extra-cmake-modules qt6-tools)
sha256sums=('b6602d21ba891a63461827aa4513946aef0d8e0141f4a831aafb2c4d2e3fb329')
sha256sums=('91a60e0fefa294a337f2519c77ff2405b86eff99f3ea0e8fc3e34265ef4670f2')
group=(kde.frameworks)
uses=()
arch=('x86_64')
+3 -3
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
name='threadweaver'
release='4'
version='6.7.0'
release='5'
version='6.18.0'
url='https://community.kde.org/Frameworks'
description='High-level multithreading framework'
email='brkt8khn@gmail.com'
@@ -10,7 +10,7 @@ license=('LGPL')
source=("https://download.kde.org/stable/frameworks/${version%.*}/threadweaver-${version}.tar.xz")
depends=(qt6-base)
makedepends=(extra-cmake-modules qt6-tools doxygen)
sha256sums=('1ac3fc8051f31ac4f76dfd5d157e5c375d183bc0762152a44e1831cf5816a956')
sha256sums=('a6e7f4c90b9b9304ef67a0fffadd77655757c65f7bee00c35b38aefc869e3278')
group=(kde.frameworks)
uses=()
arch=('x86_64')
+7 -8
View File
@@ -1,18 +1,17 @@
#!/usr/bin/env bash
name='plasma-nm'
release='4'
version='6.2.0'
release='5'
version='6.4.5'
url='https://kde.org/plasma-desktop/'
description='Plasma applet written in QML for managing network connections'
email='aliriza.keskin@pardus.org.tr'
maintainer='aliriza'
license=('GPLv3')
source=("https://download.kde.org/stable/plasma/$version/plasma-nm-$version.tar.xz"
'no-kwallet.patch')
source=("https://download.kde.org/stable/plasma/$version/plasma-nm-$version.tar.xz")
depends=(kcmutils kcolorscheme kcompletion kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio kirigami knotifications kquickcharts
ksvg kwidgetsaddons kwindowsystem libplasma modemmanager-qt networkmanager-qt prison qca qcoro-qt6 qt6-base qt6-declarative solid)
makedepends=(extra-cmake-modules)
sha256sums=('ce72008abf17555d1b20f66480ff21992a7c44b26cf056a133fd2d2ee7421e75' 'SKIP')
sha256sums=('4a7d2296688e9597eede444de6fe6548131ed69136a6e1c4aadefa0f4a015d16')
group=(kde.plasma)
uses=()
arch=('x86_64')
@@ -20,16 +19,16 @@ arch=('x86_64')
cd $name-$version
setup () {
cmake -B build \
cmake -B build -G Ninja\
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
}
build () {
cmake --build build
ninja -C build $jobs
}
package () {
INSTALL_ROOT="$DESTDIR" cmake --install build
ninja -C build $jobs install
}
+3 -3
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
name='systemsettings'
release='3'
version='6.2.0'
release='4'
version='6.4.5'
url='https://kde.org/plasma-desktop'
description='KDE system manager for hardware, software, and workspaces'
email='aliriza.keskin@pardus.org.tr'
@@ -10,7 +10,7 @@ license=('GPLv3')
source=("https://download.kde.org/stable/plasma/$version/systemsettings-$version.tar.xz")
depends=(plasma-workspace)
makedepends=(extra-cmake-modules kdoctools)
sha256sums=('6b4675edd4717f7ca88d17700696c38873ff46b3f9063ecfa7cc207eb04ebae0')
sha256sums=('90d7f097f1a77a400076224cdba45b94c71d0fec43efd2ed737047f2ff2aba8f')
group=(kde.plasma)
uses=()
arch=('x86_64')