From 977706330d1286d4ef1a41c6cc4dce37820e0404 Mon Sep 17 00:00:00 2001
From: Bart Ribbers <bribbers@disroot.org>
Date: Mon, 16 Oct 2023 11:08:36 +0200
Subject: [PATCH] community/kde-cli-tools: rework workaround for a circular
 dependency

To fix a circular dependency https://gitlab.alpinelinux.org/alpine/aports/-/issues/11785
we previously let kde-cli-tools install itself when plasma-workspace was
installed through a install_if. However that means that if there are 2
versions of kde-cli-tools available in the enabled repositories, in my
case a Qt5 and a Qt6 one, the "old" one will keep pulling itself in
which blocks installation of plasma-workspace (due to requiring both KF5
and KF6 packages at the same time, conflicting with each other).

plasma-workspace still depends on kde-cli-tools at runtime and kde-cli-tools
still requires plasma-workspace for building, but now we just pull the
dep in through plasma-desktop, plasma-mobile and plasma-bigscreen to fix
this

Note that this circular dependency is resolved in the Qt6 builds so this
won't be a problem in the future
---
 community/kde-cli-tools/APKBUILD    | 6 ++----
 community/plasma-bigscreen/APKBUILD | 3 ++-
 community/plasma-desktop/APKBUILD   | 3 ++-
 community/plasma-mobile/APKBUILD    | 3 ++-
 4 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/community/kde-cli-tools/APKBUILD b/community/kde-cli-tools/APKBUILD
index fc9280d47316..078c5163574a 100644
--- a/community/kde-cli-tools/APKBUILD
+++ b/community/kde-cli-tools/APKBUILD
@@ -5,7 +5,7 @@
 # group=kde-plasma
 pkgname=kde-cli-tools
 pkgver=5.27.8
-pkgrel=1
+pkgrel=2
 pkgdesc="Tools based on KDE Frameworks 5 to better interact with the system"
 # armhf blocked by extra-cmake-modules
 arch="all !armhf"
@@ -23,6 +23,7 @@ makedepends="
 	kiconthemes5-dev
 	kinit5-dev
 	kio5-dev
+	kparts5-dev
 	kservice5-dev
 	kwindowsystem5-dev
 	plasma-workspace-dev
@@ -42,9 +43,6 @@ source="https://download.kde.org/$_rel/plasma/$pkgver/kde-cli-tools-$pkgver.tar.
 subpackages="$pkgname-doc $pkgname-lang"
 options="!check" # Broken
 
-# Workaround a circular dependency https://gitlab.alpinelinux.org/alpine/aports/-/issues/11785
-install_if="plasma-workspace"
-
 build() {
 	cmake -B build -G Ninja \
 		-DCMAKE_BUILD_TYPE=RelWithDebInfo \
diff --git a/community/plasma-bigscreen/APKBUILD b/community/plasma-bigscreen/APKBUILD
index de42b1410de9..4f813bf475cb 100644
--- a/community/plasma-bigscreen/APKBUILD
+++ b/community/plasma-bigscreen/APKBUILD
@@ -5,13 +5,14 @@
 # group=kde-plasma
 pkgname=plasma-bigscreen
 pkgver=5.27.8
-pkgrel=1
+pkgrel=2
 pkgdesc="A 10-feet interface made for TVs"
 url="https://invent.kde.org/plasma/plasma-bigscreen/"
 # armhf blocked by qt5-qtdeclarative
 arch="all !armhf"
 license="LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL"
 depends="
+	kde-cli-tools
 	kdeconnect
 	kirigami2
 	plasma-nano
diff --git a/community/plasma-desktop/APKBUILD b/community/plasma-desktop/APKBUILD
index 6f9fef3158ee..fb7fee17107f 100644
--- a/community/plasma-desktop/APKBUILD
+++ b/community/plasma-desktop/APKBUILD
@@ -5,7 +5,7 @@
 # group=kde-plasma
 pkgname=plasma-desktop
 pkgver=5.27.8
-pkgrel=2
+pkgrel=3
 pkgdesc="KDE Plasma Desktop"
 # armhf blocked by qt5-qtdeclarative
 # ppc64le, s390x and riscv64 blocked by qt5-qtwebengine -> kaccounts-integration
@@ -16,6 +16,7 @@ depends="
 	accountsservice
 	font-noto-emoji
 	ibus-emoji
+	kde-cli-tools
 	kirigami2
 	plasma-workspace
 	qqc2-desktop-style5
diff --git a/community/plasma-mobile/APKBUILD b/community/plasma-mobile/APKBUILD
index e113e5d3c667..998335e68dc8 100644
--- a/community/plasma-mobile/APKBUILD
+++ b/community/plasma-mobile/APKBUILD
@@ -5,7 +5,7 @@
 # group=kde-plasma
 pkgname=plasma-mobile
 pkgver=5.27.8
-pkgrel=1
+pkgrel=2
 pkgdesc="Modules providing phone functionality for Plasma"
 # armhf blocked by extra-cmake-modules
 arch="all !armhf"
@@ -15,6 +15,7 @@ depends="
 	breeze-icons5
 	dbus-x11
 	kactivities5
+	kde-cli-tools
 	kpipewire
 	maliit-keyboard
 	plasma-nano
-- 
GitLab