* [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/
@ 2018-04-20 9:51 Andreas Sturmlechner
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Sturmlechner @ 2018-04-20 9:51 UTC (permalink / raw
To: gentoo-commits
commit: b670e0269c34832d398378dfca371c7572ae680c
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 20 09:50:22 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Apr 20 09:50:44 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b670e026
kde-apps/ark: Fix build (missing header)
Thanks-to: Marco Genasci <fedeliallalinea <AT> gmail.com>
Closes: https://bugs.gentoo.org/653546
Package-Manager: Portage-2.3.31, Repoman-2.3.9
kde-apps/ark/ark-18.04.0.ebuild | 2 ++
.../files/ark-18.04.0-missing-memory-include.patch | 35 ++++++++++++++++++++++
2 files changed, 37 insertions(+)
diff --git a/kde-apps/ark/ark-18.04.0.ebuild b/kde-apps/ark/ark-18.04.0.ebuild
index eb5ba873787..273b2b1ad90 100644
--- a/kde-apps/ark/ark-18.04.0.ebuild
+++ b/kde-apps/ark/ark-18.04.0.ebuild
@@ -47,6 +47,8 @@ DEPEND="${RDEPEND}
# bug #560548, last checked with 16.04.1
RESTRICT+=" test"
+PATCHES=( "${FILESDIR}/${P}-missing-memory-include.patch" )
+
src_configure() {
local mycmakeargs=(
$(cmake-utils_use_find_package bzip2 BZip2)
diff --git a/kde-apps/ark/files/ark-18.04.0-missing-memory-include.patch b/kde-apps/ark/files/ark-18.04.0-missing-memory-include.patch
new file mode 100644
index 00000000000..1935fc4ccae
--- /dev/null
+++ b/kde-apps/ark/files/ark-18.04.0-missing-memory-include.patch
@@ -0,0 +1,35 @@
+From 23ce7f8c727d76d4532b8949c383c3f17b64a539 Mon Sep 17 00:00:00 2001
+From: Marco Genasci <fedeliallalinea@gmail.com>
+Date: Fri, 20 Apr 2018 11:40:30 +0200
+Subject: [PATCH] libzipplugin: Add missing <memory> header
+
+Summary:
+Build fails on some setups for use of std::unique_ptr.
+See also: https://bugs.gentoo.org/653546
+
+Reviewers: #ark
+
+Subscribers: kde-utils-devel
+
+Tags: #ark
+
+Differential Revision: https://phabricator.kde.org/D12374
+---
+ plugins/libzipplugin/libzipplugin.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/plugins/libzipplugin/libzipplugin.cpp b/plugins/libzipplugin/libzipplugin.cpp
+index 5641c97b..be260b39 100644
+--- a/plugins/libzipplugin/libzipplugin.cpp
++++ b/plugins/libzipplugin/libzipplugin.cpp
+@@ -41,6 +41,7 @@
+
+ #include <utime.h>
+ #include <zlib.h>
++#include <memory>
+
+ K_PLUGIN_FACTORY_WITH_JSON(LibZipPluginFactory, "kerfuffle_libzip.json", registerPlugin<LibzipPlugin>();)
+
+--
+2.17.0
+
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/
@ 2019-08-13 5:53 Andreas Sturmlechner
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Sturmlechner @ 2019-08-13 5:53 UTC (permalink / raw
To: gentoo-commits
commit: 5b21f5734def975d65bfb183641a8bcd05c53a0d
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 13 05:52:49 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Aug 13 05:53:20 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b21f573
kde-apps/ark: Fix missing header with Frameworks 5.61
Reported-by: Geoff Madden <mgmadden <AT> internode.on.net>
Closes: https://bugs.gentoo.org/692034
Package-Manager: Portage-2.3.71, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
kde-apps/ark/ark-19.04.3.ebuild | 2 +
| 54 ++++++++++++++++++++++
2 files changed, 56 insertions(+)
diff --git a/kde-apps/ark/ark-19.04.3.ebuild b/kde-apps/ark/ark-19.04.3.ebuild
index b9224f70aa0..1369e67045f 100644
--- a/kde-apps/ark/ark-19.04.3.ebuild
+++ b/kde-apps/ark/ark-19.04.3.ebuild
@@ -46,6 +46,8 @@ DEPEND="${RDEPEND}
$(add_qt_dep qtconcurrent)
"
+PATCHES=( "${FILESDIR}/${P}-missing-header.patch" )
+
# bug #560548, last checked with 16.04.1
RESTRICT+=" test"
--git a/kde-apps/ark/files/ark-19.04.3-missing-header.patch b/kde-apps/ark/files/ark-19.04.3-missing-header.patch
new file mode 100644
index 00000000000..a0b16e93a4f
--- /dev/null
+++ b/kde-apps/ark/files/ark-19.04.3-missing-header.patch
@@ -0,0 +1,54 @@
+From dfad7a3f389c3b852f45563854df123ac6facdec Mon Sep 17 00:00:00 2001
+From: Nicolas Fella <nicolas.fella@gmx.de>
+Date: Mon, 15 Jul 2019 00:09:18 +0200
+Subject: Add missing QVector include
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Summary:
+My build was failing with
+```
+In file included from /home/nico/kde/src/ark/kerfuffle/pluginmanager.cpp:28:
+/home/nico/kde/src/ark/kerfuffle/pluginmanager.h:138:22: error: field ‘m_plugins’ has incomplete type ‘QVector<Kerfuffle::Plugin*>’
+ QVector<Plugin*> m_plugins;
+ ^~~~~~~~~
+In file included from /usr/include/qt/QtCore/qglobal.h:1204,
+ from /usr/include/qt/QtCore/qnamespace.h:43,
+ from /usr/include/qt/QtCore/qobjectdefs.h:48,
+ from /usr/include/qt/QtCore/qobject.h:46,
+ from /usr/include/qt/QtCore/QObject:1,
+ from /home/nico/kde/src/ark/kerfuffle/plugin.h:33,
+ from /home/nico/kde/src/ark/kerfuffle/pluginmanager.h:31,
+ from /home/nico/kde/src/ark/kerfuffle/pluginmanager.cpp:28
+```
+
+Test Plan: Builds. Can open a file
+
+Reviewers: #ark, elvisangelaccio
+
+Reviewed By: #ark, elvisangelaccio
+
+Subscribers: kde-utils-devel, #ark
+
+Tags: #ark
+
+Differential Revision: https://phabricator.kde.org/D22461
+---
+ kerfuffle/pluginmanager.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/kerfuffle/pluginmanager.h b/kerfuffle/pluginmanager.h
+index 75a971b..8b9ad69 100644
+--- a/kerfuffle/pluginmanager.h
++++ b/kerfuffle/pluginmanager.h
+@@ -31,6 +31,7 @@
+ #include "plugin.h"
+
+ #include <QMimeType>
++#include <QVector>
+
+ namespace Kerfuffle
+ {
+--
+cgit v1.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/
@ 2020-11-25 18:13 Andreas Sturmlechner
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Sturmlechner @ 2020-11-25 18:13 UTC (permalink / raw
To: gentoo-commits
commit: d0c9398bc5cdd3a9f94fe8848243d6a01c7d202e
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 25 17:50:58 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Nov 25 18:05:28 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0c9398b
kde-apps/ark: drop 20.04.3*
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
kde-apps/ark/Manifest | 1 -
kde-apps/ark/ark-20.04.3-r2.ebuild | 83 ----------------------
.../ark/files/ark-20.04.3-CVE-2020-16116.patch | 46 ------------
.../ark/files/ark-20.04.3-CVE-2020-24654.patch | 53 --------------
4 files changed, 183 deletions(-)
diff --git a/kde-apps/ark/Manifest b/kde-apps/ark/Manifest
index 516e40a4e1f..1946a0daada 100644
--- a/kde-apps/ark/Manifest
+++ b/kde-apps/ark/Manifest
@@ -1,2 +1 @@
-DIST ark-20.04.3.tar.xz 2586436 BLAKE2B 98343a4bc91fd13a33ba9dd69487c27433435d4bff722245c2cde02191017f4fa0b2d15213b97a86c3ecd87a17bf59e62a80b63c6684c813845bec9bab58f441 SHA512 6274483bc7cad9b8b3842a622a3f243fd5756aec147624eb9041459efd5c833e203c286412185bb105133d8c83a7503c8c7e519b8cb9cbd13830793c3429e142
DIST ark-20.08.3.tar.xz 2711708 BLAKE2B c486320f113ab3d12b67aec7589e7973a022415da5dbe01754a9e454c74bb59d2b6556c6934aafd7b5c0ee685e2eca7feee276ad3ebb8a0c6f57aea5bc666a0f SHA512 41ab1498b77f9d152f900eba9e784e8ed28127c849796e42c18db5beb963b0c8f2a1ef1c408d37db02fb21577e5d8e08d8561b72b14042e079a5f1baffa01a01
diff --git a/kde-apps/ark/ark-20.04.3-r2.ebuild b/kde-apps/ark/ark-20.04.3-r2.ebuild
deleted file mode 100644
index 9c906db1341..00000000000
--- a/kde-apps/ark/ark-20.04.3-r2.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ECM_HANDBOOK="forceoptional"
-ECM_TEST="optional"
-KFMIN=5.70.0
-QTMIN=5.14.2
-VIRTUALX_REQUIRED="test"
-inherit ecm kde.org optfeature
-
-DESCRIPTION="File archiver by KDE"
-HOMEPAGE="https://apps.kde.org/en/ark https://utils.kde.org/projects/ark/"
-
-LICENSE="GPL-2" # TODO: CHECK
-SLOT="5"
-KEYWORDS="amd64 arm64 ~ppc64 x86"
-IUSE="zip"
-
-BDEPEND="
- sys-devel/gettext
-"
-RDEPEND="
- app-arch/libarchive:=[bzip2,lzma,zlib]
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=kde-frameworks/karchive-${KFMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kcrash-${KFMIN}:5
- >=kde-frameworks/kdbusaddons-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kio-${KFMIN}:5
- >=kde-frameworks/kitemmodels-${KFMIN}:5
- >=kde-frameworks/kjobwidgets-${KFMIN}:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/kpty-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- sys-libs/zlib
- zip? ( >=dev-libs/libzip-1.2.0:= )
-"
-DEPEND="${RDEPEND}
- >=dev-qt/qtconcurrent-${QTMIN}:5
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-CVE-2020-16116.patch"
- "${FILESDIR}/${P}-CVE-2020-24654.patch"
-)
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package zip LibZip)
- )
-
- ecm_src_configure
-}
-
-src_test() {
- local myctestargs=(
- -E "(plugins-clirartest)"
- )
-
- ecm_src_test
-}
-
-pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- elog "Optional dependencies:"
- optfeature "rar archive creation/extraction" app-arch/rar
- optfeature "rar archive extraction only" app-arch/unar app-arch/unrar
- optfeature "7-Zip archive support" app-arch/p7zip
- optfeature "lrz archive support" app-arch/lrzip
- optfeature "markdown support in text previews" kde-misc/markdownpart:${SLOT} kde-misc/kmarkdownwebview:${SLOT}
- fi
- ecm_pkg_postinst
-}
diff --git a/kde-apps/ark/files/ark-20.04.3-CVE-2020-16116.patch b/kde-apps/ark/files/ark-20.04.3-CVE-2020-16116.patch
deleted file mode 100644
index 79129c7be6e..00000000000
--- a/kde-apps/ark/files/ark-20.04.3-CVE-2020-16116.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 0df592524fed305d6fbe74ddf8a196bc9ffdb92f Mon Sep 17 00:00:00 2001
-From: Elvis Angelaccio <elvis.angelaccio@kde.org>
-Date: Wed, 29 Jul 2020 23:45:30 +0200
-Subject: [PATCH] Fix vulnerability to path traversal attacks
-
-Ark was vulnerable to directory traversal attacks because of
-missing validation of file paths in the archive.
-
-More details about this attack are available at:
-https://github.com/snyk/zip-slip-vulnerability
-
-Job::onEntry() is the only place where we can safely check the path of
-every entry in the archive. There shouldn't be a valid reason
-to have a "../" in an archive path, so we can just play safe and abort
-the LoadJob if we detect such an entry. This makes impossibile to
-extract this kind of malicious archives and perform the attack.
-
-Thanks to Albert Astals Cid for suggesting to use QDir::cleanPath()
-so that we can still allow loading of legitimate archives that
-contain "../" in their paths but still resolve inside the extraction folder.
----
- kerfuffle/jobs.cpp | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/kerfuffle/jobs.cpp b/kerfuffle/jobs.cpp
-index fdaa48695..f73b56f86 100644
---- a/kerfuffle/jobs.cpp
-+++ b/kerfuffle/jobs.cpp
-@@ -180,6 +180,14 @@ void Job::onError(const QString & message, const QString & details)
-
- void Job::onEntry(Archive::Entry *entry)
- {
-+ const QString entryFullPath = entry->fullPath();
-+ if (QDir::cleanPath(entryFullPath).contains(QLatin1String("../"))) {
-+ qCWarning(ARK) << "Possibly malicious archive. Detected entry that could lead to a directory traversal attack:" << entryFullPath;
-+ onError(i18n("Could not load the archive because it contains ill-formed entries and might be a malicious archive."), QString());
-+ onFinished(false);
-+ return;
-+ }
-+
- emit newEntry(entry);
- }
-
---
-GitLab
-
diff --git a/kde-apps/ark/files/ark-20.04.3-CVE-2020-24654.patch b/kde-apps/ark/files/ark-20.04.3-CVE-2020-24654.patch
deleted file mode 100644
index 8b3821893ef..00000000000
--- a/kde-apps/ark/files/ark-20.04.3-CVE-2020-24654.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 8bf8c5ef07b0ac5e914d752681e470dea403a5bd Mon Sep 17 00:00:00 2001
-From: Fabian Vogt <fabian@ritter-vogt.de>
-Date: Tue, 25 Aug 2020 22:14:37 +0200
-Subject: [PATCH] Pass the ARCHIVE_EXTRACT_SECURE_SYMLINKS flag to libarchive
-
-There are archive types which allow to first create a symlink and then
-later on dereference it. If the symlink points outside of the archive,
-this results in writing outside of the destination directory.
-
-With the ARCHIVE_EXTRACT_SECURE_SYMLINKS option set, libarchive avoids
-this situation by verifying that none of the target path components are
-symlinks before writing.
-
-Remove the commented out code in the method, which would actually
-misbehave if enabled again.
-
-Signed-off-by: Fabian Vogt <fabian@ritter-vogt.de>
----
- plugins/libarchive/libarchiveplugin.cpp | 18 +++---------------
- 1 file changed, 3 insertions(+), 15 deletions(-)
-
-diff --git a/plugins/libarchive/libarchiveplugin.cpp b/plugins/libarchive/libarchiveplugin.cpp
-index 50e81da1..8a0fed21 100644
---- a/plugins/libarchive/libarchiveplugin.cpp
-+++ b/plugins/libarchive/libarchiveplugin.cpp
-@@ -509,21 +509,9 @@ void LibarchivePlugin::emitEntryFromArchiveEntry(struct archive_entry *aentry)
-
- int LibarchivePlugin::extractionFlags() const
- {
-- int result = ARCHIVE_EXTRACT_TIME;
-- result |= ARCHIVE_EXTRACT_SECURE_NODOTDOT;
--
-- // TODO: Don't use arksettings here
-- /*if ( ArkSettings::preservePerms() )
-- {
-- result &= ARCHIVE_EXTRACT_PERM;
-- }
--
-- if ( !ArkSettings::extractOverwrite() )
-- {
-- result &= ARCHIVE_EXTRACT_NO_OVERWRITE;
-- }*/
--
-- return result;
-+ return ARCHIVE_EXTRACT_TIME
-+ | ARCHIVE_EXTRACT_SECURE_NODOTDOT
-+ | ARCHIVE_EXTRACT_SECURE_SYMLINKS;
- }
-
- void LibarchivePlugin::copyData(const QString& filename, struct archive *dest, bool partialprogress)
---
-GitLab
-
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/
@ 2021-02-04 14:07 Andreas Sturmlechner
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Sturmlechner @ 2021-02-04 14:07 UTC (permalink / raw
To: gentoo-commits
commit: 8fa2be52bcad3ca8e38b5ce6f4ac49074839612f
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 4 13:37:26 2021 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Feb 4 14:05:58 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8fa2be52
kde-apps/ark: drop 20.12.1*
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
kde-apps/ark/Manifest | 1 -
kde-apps/ark/ark-20.12.1.ebuild | 80 ----------------------
kde-apps/ark/files/ark-20.12.1-runtime-crash.patch | 60 ----------------
3 files changed, 141 deletions(-)
diff --git a/kde-apps/ark/Manifest b/kde-apps/ark/Manifest
index 1389bd5211f..c283cbad6c9 100644
--- a/kde-apps/ark/Manifest
+++ b/kde-apps/ark/Manifest
@@ -1,3 +1,2 @@
DIST ark-20.08.3.tar.xz 2711708 BLAKE2B c486320f113ab3d12b67aec7589e7973a022415da5dbe01754a9e454c74bb59d2b6556c6934aafd7b5c0ee685e2eca7feee276ad3ebb8a0c6f57aea5bc666a0f SHA512 41ab1498b77f9d152f900eba9e784e8ed28127c849796e42c18db5beb963b0c8f2a1ef1c408d37db02fb21577e5d8e08d8561b72b14042e079a5f1baffa01a01
-DIST ark-20.12.1.tar.xz 2716648 BLAKE2B c24c36c9d91d7a06073b8d5d6cdee509551f81f68b92cfcf83ed3330a8615de92b8494f7f7b5968ca85d51c947da54d08e7181cd5c56ab306b9826ebb695cb58 SHA512 1b3c145c03ba29a742f36bd8808addc4484a519c7f2d514fbed43866d07e7b119e3b7c2df68ee14371f83e3d441bb575e5524495f1b8976062d9c0032bdb566a
DIST ark-20.12.2.tar.xz 2717316 BLAKE2B d7ac5b3a69f8571ac66b51d726ed9d4d89aaa240ac32d4d9202ae25209951414c668d6d8902dd171728ce58e82a1cb3bfa86f4ef24ace566f36c77760daa52e9 SHA512 5992525f6459e007deec1047bb3e7f35cc47c3cb3e831e1af3a93044ce96fbf96f2e2466e411f12ac836243f463e15c0c67173251adee192e85a43b3afd461ba
diff --git a/kde-apps/ark/ark-20.12.1.ebuild b/kde-apps/ark/ark-20.12.1.ebuild
deleted file mode 100644
index 0ee40c563d4..00000000000
--- a/kde-apps/ark/ark-20.12.1.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ECM_HANDBOOK="forceoptional"
-ECM_TEST="optional"
-KFMIN=5.75.0
-QTMIN=5.15.1
-VIRTUALX_REQUIRED="test"
-inherit ecm kde.org optfeature
-
-DESCRIPTION="File archiver by KDE"
-HOMEPAGE="https://apps.kde.org/en/ark https://utils.kde.org/projects/ark/"
-
-LICENSE="GPL-2" # TODO: CHECK
-SLOT="5"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="zip"
-
-BDEPEND="
- sys-devel/gettext
-"
-RDEPEND="
- app-arch/libarchive:=[bzip2,lzma,zlib]
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=kde-frameworks/karchive-${KFMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kcrash-${KFMIN}:5
- >=kde-frameworks/kdbusaddons-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kio-${KFMIN}:5
- >=kde-frameworks/kitemmodels-${KFMIN}:5
- >=kde-frameworks/kjobwidgets-${KFMIN}:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/kpty-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- sys-libs/zlib
- zip? ( >=dev-libs/libzip-1.2.0:= )
-"
-DEPEND="${RDEPEND}
- >=dev-qt/qtconcurrent-${QTMIN}:5
-"
-
-PATCHES=( "${FILESDIR}/${P}-runtime-crash.patch" )
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package zip LibZip)
- )
-
- ecm_src_configure
-}
-
-src_test() {
- local myctestargs=(
- -E "(plugins-clirartest)"
- )
-
- ecm_src_test
-}
-
-pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- elog "Optional dependencies:"
- optfeature "rar archive creation/extraction" app-arch/rar
- optfeature "rar archive extraction only" app-arch/unar app-arch/unrar
- optfeature "7-Zip archive support" app-arch/p7zip
- optfeature "lrz archive support" app-arch/lrzip
- optfeature "markdown support in text previews" kde-misc/markdownpart:${SLOT} kde-misc/kmarkdownwebview:${SLOT}
- fi
- ecm_pkg_postinst
-}
diff --git a/kde-apps/ark/files/ark-20.12.1-runtime-crash.patch b/kde-apps/ark/files/ark-20.12.1-runtime-crash.patch
deleted file mode 100644
index 9ee6c7b93b9..00000000000
--- a/kde-apps/ark/files/ark-20.12.1-runtime-crash.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From a41e69b30cc07dd758849f8685d322150459e4f1 Mon Sep 17 00:00:00 2001
-From: Elvis Angelaccio <elvis.angelaccio@kde.org>
-Date: Tue, 5 Jan 2021 21:50:34 +0100
-Subject: [PATCH] Fix crash after closing the window while loading a TAR
- archive
-
-A first problem was in LibarchivePlugin::list() not checking
-isInterruptionRequested() after the while loop. It was wrongly calling
-emitCorruptArchive() instead of aborting as requested.
-
-But according to the stacktrace, the actual crash seemed to be caused by
-the for() loop over qAsConst(m_jobs):
-
- #0 0x00007ffff5f6a023 in QHashData::nextNode(QHashData::Node*) () from /usr/lib/libQt5Core.so.5
- #1 0x00007fffe1dcb2ec in QHash<KJob*, QHashDummyValue>::const_iterator::operator++ (this=0x7fffffffc4d0) at /usr/include/qt/QtCore/qhash.h:426
- #2 0x00007fffe1dcadac in QSet<KJob*>::const_iterator::operator++ (this=0x7fffffffc4d0) at /usr/include/qt/QtCore/qset.h:174
- #3 0x00007fffe1dca17e in JobTracker::~JobTracker (this=0x555555c319c0) at ../part/jobtracker.cpp:41
-
-Porting to QSetIterator fixes the crash.
-
-BUG: 410092
-FIXED-IN: 20.12.2
----
- part/jobtracker.cpp | 4 +++-
- plugins/libarchive/libarchiveplugin.cpp | 4 ++++
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/part/jobtracker.cpp b/part/jobtracker.cpp
-index e11e402d..a7a57fef 100644
---- a/part/jobtracker.cpp
-+++ b/part/jobtracker.cpp
-@@ -38,7 +38,9 @@ JobTracker::JobTracker(QWidget *parent)
-
- JobTracker::~JobTracker()
- {
-- for (KJob *job : qAsConst(m_jobs)) {
-+ QSetIterator<KJob *> it(m_jobs);
-+ while (it.hasNext()) {
-+ auto job = it.next();
- job->kill();
- }
- }
-diff --git a/plugins/libarchive/libarchiveplugin.cpp b/plugins/libarchive/libarchiveplugin.cpp
-index d2c0d7e1..8a6af526 100644
---- a/plugins/libarchive/libarchiveplugin.cpp
-+++ b/plugins/libarchive/libarchiveplugin.cpp
-@@ -113,6 +113,10 @@ bool LibarchivePlugin::list()
- }
- }
-
-+ if (QThread::currentThread()->isInterruptionRequested()) {
-+ return false;
-+ }
-+
- if (result != ARCHIVE_EOF) {
- qCCritical(ARK) << "Error while reading archive:"
- << result
---
-GitLab
-
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/
@ 2023-10-12 13:23 Andreas Sturmlechner
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Sturmlechner @ 2023-10-12 13:23 UTC (permalink / raw
To: gentoo-commits
commit: 2d279ef199e6b4331d1706c44f73535ce6ce7472
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 12 11:42:33 2023 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 13:23:09 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2d279ef1
kde-apps/ark: drop 23.08.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
kde-apps/ark/Manifest | 1 -
kde-apps/ark/ark-23.08.1.ebuild | 83 ------------------------------
kde-apps/ark/files/ark-23.08.1-cmake.patch | 40 --------------
3 files changed, 124 deletions(-)
diff --git a/kde-apps/ark/Manifest b/kde-apps/ark/Manifest
index 92147d1cb995..0174f55f7949 100644
--- a/kde-apps/ark/Manifest
+++ b/kde-apps/ark/Manifest
@@ -1,3 +1,2 @@
DIST ark-23.04.3.tar.xz 3010636 BLAKE2B 93600fb21940839bafd25aabfb1ff346088b0bef7c49e1d73cc6b3e17d073dfca924caa747d2c0f3c70ccd63569aebc3d8a6d137c7503c9a17a1af1ab833b4b9 SHA512 6ca740fef459232cf7ff19d76b2ddcb080b8c9b34a0c718dae0875253417a6f3f8f9c4a7bd2bc5002ae06bb41eef7f958a40f0d54896680e82879ef0f1cbed10
-DIST ark-23.08.1.tar.xz 3016220 BLAKE2B 7bc22a83b9f0bf3a426a3a9a0d6eea9f053c808e475cd5c777144b6229317ee7415f0469e758216b7f425588503e30426bd146f48656faccfc785ffdabb1c387 SHA512 fd2e99695e1dbcab2118ab0d38595852a2afd4490d07322fc5558eb3a4134d21206477675cbe8658009092faffc94e65953c138a929df1be682d80f8106c0b8a
DIST ark-23.08.2.tar.xz 3017536 BLAKE2B 0f9cd45103aa43398d62e66dfbb85214f7c7792c1dae502dae8f9f92900a6f91d0b3573258c84ec8ebfec39d7a81f3404b3c617cfc0dc026d8c0f9d41cd782aa SHA512 5dae45c587129b8c72a3334103a36f4c822aadbece463df704b84ff57cd9cc8dd49e1e7ac20193b4b2c8537b134081110dee66b6791c1efd5365c80587dec288
diff --git a/kde-apps/ark/ark-23.08.1.ebuild b/kde-apps/ark/ark-23.08.1.ebuild
deleted file mode 100644
index 890af802575e..000000000000
--- a/kde-apps/ark/ark-23.08.1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_HANDBOOK="forceoptional"
-ECM_TEST="optional"
-KFMIN=5.106.0
-QTMIN=5.15.9
-inherit ecm gear.kde.org optfeature
-
-DESCRIPTION="File archiver by KDE"
-HOMEPAGE="https://apps.kde.org/ark/"
-
-LICENSE="GPL-2" # TODO: CHECK
-SLOT="5"
-KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
-IUSE="zip"
-
-RDEPEND="
- >=app-arch/libarchive-3.5.3:=[bzip2,lzma]
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kcrash-${KFMIN}:5
- >=kde-frameworks/kdbusaddons-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kio-${KFMIN}:5
- >=kde-frameworks/kjobwidgets-${KFMIN}:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/kpty-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kwindowsystem-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- sys-libs/zlib
- zip? ( >=dev-libs/libzip-1.6.0:= )
-"
-DEPEND="${RDEPEND}
- >=dev-qt/qtconcurrent-${QTMIN}:5
- >=kde-frameworks/kiconthemes-${KFMIN}:5
- test? ( >=dev-libs/libzip-1.6.0:= )
-"
-# app-arch/rar is binary only
-BDEPEND="
- sys-devel/gettext
- elibc_glibc? ( test? ( amd64? ( app-arch/rar ) x86? ( app-arch/rar ) ) )
-"
-
-PATCHES=( "${FILESDIR}/${P}-cmake.patch" )
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package zip LibZip)
- )
-
- ecm_src_configure
-}
-
-src_test() {
- local myctestargs=(
- # bug 822177: kerfuffle-addtoarchivetest: may segfault or hang indefinitely
- # bug 827840: plugins-clirartest: continuously broken with translations installed
- -E "(kerfuffle-addtoarchivetest|plugins-clirartest)"
- )
-
- ecm_src_test
-}
-
-pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- optfeature "rar archive creation/extraction" "app-arch/rar"
- optfeature "rar archive extraction only" "app-arch/unar" "app-arch/unrar"
- optfeature "7-Zip archive support" "app-arch/p7zip"
- optfeature "lrz archive support" "app-arch/lrzip"
- optfeature "Markdown support in text previews" "kde-misc/markdownpart:${SLOT}"
- fi
- ecm_pkg_postinst
-}
diff --git a/kde-apps/ark/files/ark-23.08.1-cmake.patch b/kde-apps/ark/files/ark-23.08.1-cmake.patch
deleted file mode 100644
index 5bdf0af81435..000000000000
--- a/kde-apps/ark/files/ark-23.08.1-cmake.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 149271d3e341eea531405191ff1002fda86fdf84 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Thu, 14 Sep 2023 15:53:36 +0200
-Subject: [PATCH] Drop unused ItemModels dependency
-
-Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-(cherry picked from commit 9343567be9f895cbe5e290f88c9a933db34cdd95)
----
- CMakeLists.txt | 1 -
- part/CMakeLists.txt | 2 +-
- 2 files changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 510adbc5..764cce99 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -40,7 +40,6 @@ find_package(KF${QT_MAJOR_VERSION} ${KF_MIN_VERSION} REQUIRED COMPONENTS Config
- DBusAddons
- DocTools
- I18n
-- ItemModels
- KIO
- Service
- Parts
-diff --git a/part/CMakeLists.txt b/part/CMakeLists.txt
-index c4c96972..d760f78a 100644
---- a/part/CMakeLists.txt
-+++ b/part/CMakeLists.txt
-@@ -26,7 +26,7 @@ ki18n_wrap_ui(arkpart
- jobtracker.ui)
-
-
--target_link_libraries(arkpart kerfuffle KF${QT_MAJOR_VERSION}::Parts KF${QT_MAJOR_VERSION}::KIOFileWidgets KF${QT_MAJOR_VERSION}::ItemModels)
-+target_link_libraries(arkpart kerfuffle KF${QT_MAJOR_VERSION}::Parts KF${QT_MAJOR_VERSION}::KIOFileWidgets)
-
- if(QT_MAJOR_VERSION STREQUAL "5")
- configure_file(
---
-2.42.0
-
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/
@ 2023-10-15 15:23 Sam James
0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-10-15 15:23 UTC (permalink / raw
To: gentoo-commits
commit: 2619d290b3aa3e985982f47cdeaf9c9f064a7e1f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 15 15:22:01 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Oct 15 15:22:41 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2619d290
kde-apps/ark: backport shared-mime-info-2.3 fixes
Upstream commits:
* 785640b090b51e0067dbfc6c7944a478429204a2
* 62d94c62f2fd2052be91dfe565e35a6d43c7d381
* dac14f552fb147bf4c9f759611cdb3b544a500b9
* 9bcbcb056c43abef88540c54f25bc6c1a78c7c0e
Signed-off-by: Sam James <sam <AT> gentoo.org>
kde-apps/ark/ark-23.08.2-r1.ebuild | 93 ++++++++++++++++
...8.2-dont-hardcode-bzip2-mimetype-in-tests.patch | 44 ++++++++
...itly-support-application-vnd-efi-iso-mime.patch | 36 ++++++
...23.08.2-fix-checks-using-old-ISO-mimetype.patch | 36 ++++++
.../ark-23.08.2-fix-support-for-bzip2-format.patch | 121 +++++++++++++++++++++
5 files changed, 330 insertions(+)
diff --git a/kde-apps/ark/ark-23.08.2-r1.ebuild b/kde-apps/ark/ark-23.08.2-r1.ebuild
new file mode 100644
index 000000000000..d4ee2c6a5a57
--- /dev/null
+++ b/kde-apps/ark/ark-23.08.2-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="forceoptional"
+ECM_TEST="optional"
+KFMIN=5.106.0
+QTMIN=5.15.9
+inherit ecm gear.kde.org optfeature
+
+DESCRIPTION="File archiver by KDE"
+HOMEPAGE="https://apps.kde.org/ark/"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="zip"
+
+RDEPEND="
+ >=app-arch/libarchive-3.5.3:=[bzip2,lzma]
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=kde-frameworks/kcompletion-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kcrash-${KFMIN}:5
+ >=kde-frameworks/kdbusaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kjobwidgets-${KFMIN}:5
+ >=kde-frameworks/kparts-${KFMIN}:5
+ >=kde-frameworks/kpty-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ sys-libs/zlib
+ zip? ( >=dev-libs/libzip-1.6.0:= )
+"
+DEPEND="${RDEPEND}
+ >=dev-qt/qtconcurrent-${QTMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ test? ( >=dev-libs/libzip-1.6.0:= )
+"
+# app-arch/rar is binary only
+BDEPEND="
+ sys-devel/gettext
+ elibc_glibc? ( test? ( amd64? ( app-arch/rar ) x86? ( app-arch/rar ) ) )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-23.08.2-explicitly-support-application-vnd-efi-iso-mime.patch
+ "${FILESDIR}"/${PN}-23.08.2-fix-support-for-bzip2-format.patch
+ "${FILESDIR}"/${PN}-23.08.2-dont-hardcode-bzip2-mimetype-in-tests.patch
+ "${FILESDIR}"/${PN}-23.08.2-fix-checks-using-old-ISO-mimetype.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package zip LibZip)
+ )
+
+ ecm_src_configure
+}
+
+src_test() {
+ local CMAKE_SKIP_TESTS=(
+ # bug 822177: kerfuffle-addtoarchivetest: may segfault or hang indefinitely
+ kerfuffle-addtoarchivetest
+ # bug 827840: plugins-clirartest: continuously broken with translations installed
+ plugins-clirartest
+
+ # kerfuffle-extracttest, kerfuffle-mimetypetest: broken with x11-misc/shared-mime-info-2.3
+ kerfuffle-extracttest
+ kerfuffle-mimetypetest
+ )
+
+ ecm_src_test
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ optfeature "rar archive creation/extraction" "app-arch/rar"
+ optfeature "rar archive extraction only" "app-arch/unar" "app-arch/unrar"
+ optfeature "7-Zip archive support" "app-arch/p7zip"
+ optfeature "lrz archive support" "app-arch/lrzip"
+ optfeature "Markdown support in text previews" "kde-misc/markdownpart:${SLOT}"
+ fi
+ ecm_pkg_postinst
+}
diff --git a/kde-apps/ark/files/ark-23.08.2-dont-hardcode-bzip2-mimetype-in-tests.patch b/kde-apps/ark/files/ark-23.08.2-dont-hardcode-bzip2-mimetype-in-tests.patch
new file mode 100644
index 000000000000..fad87b4114ef
--- /dev/null
+++ b/kde-apps/ark/files/ark-23.08.2-dont-hardcode-bzip2-mimetype-in-tests.patch
@@ -0,0 +1,44 @@
+https://invent.kde.org/utilities/ark/-/commit/785640b090b51e0067dbfc6c7944a478429204a2
+
+From 785640b090b51e0067dbfc6c7944a478429204a2 Mon Sep 17 00:00:00 2001
+From: Elvis Angelaccio <elvis.angelaccio@kde.org>
+Date: Sat, 14 Oct 2023 17:34:10 +0200
+Subject: [PATCH] Don't hardcode bzip2 mimetype in tests
+
+Just take the name from QMimeDatabase, since it changes depending on
+whether we are using a shared-mime-info >= 2.3
+--- a/autotests/kerfuffle/adddialogtest.cpp
++++ b/autotests/kerfuffle/adddialogtest.cpp
+@@ -37,7 +37,7 @@ void AddDialogTest::testBasicWidgets_data()
+
+ QTest::newRow("tar") << QStringLiteral("application/x-tar") << false << -1 << -1;
+ QTest::newRow("targzip") << QStringLiteral("application/x-compressed-tar") << true << 3 << 7;
+- QTest::newRow("tarbzip") << QStringLiteral("application/x-bzip-compressed-tar") << true << 3 << 7;
++ QTest::newRow("tarbzip") << QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.tar.bz2"), QMimeDatabase::MatchExtension).name() << true << 3 << 7;
+ QTest::newRow("tarZ") << QStringLiteral("application/x-tarz") << false << -1 << -1;
+ QTest::newRow("tarxz") << QStringLiteral("application/x-xz-compressed-tar") << true << 3 << 7;
+ QTest::newRow("tarlzma") << QStringLiteral("application/x-lzma-compressed-tar") << true << 3 << 7;
+--- a/autotests/kerfuffle/createdialogtest.cpp
++++ b/autotests/kerfuffle/createdialogtest.cpp
+@@ -38,7 +38,7 @@ void CreateDialogTest::testBasicWidgets_data()
+
+ QTest::newRow("tar") << QStringLiteral("application/x-tar");
+ QTest::newRow("targzip") << QStringLiteral("application/x-compressed-tar");
+- QTest::newRow("tarbzip") << QStringLiteral("application/x-bzip-compressed-tar");
++ QTest::newRow("tarbzip") << QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.tar.bz2"), QMimeDatabase::MatchExtension).name();
+ QTest::newRow("tarZ") << QStringLiteral("application/x-tarz");
+ QTest::newRow("tarxz") << QStringLiteral("application/x-xz-compressed-tar");
+ QTest::newRow("tarlzma") << QStringLiteral("application/x-lzma-compressed-tar");
+--- a/autotests/kerfuffle/mimetypetest.cpp
++++ b/autotests/kerfuffle/mimetypetest.cpp
+@@ -30,7 +30,7 @@ void MimeTypeTest::testMimeTypeDetection_data()
+ QTest::addColumn<QString>("expectedMimeType");
+
+ const QString compressedGzipTarMime = QStringLiteral("application/x-compressed-tar");
+- const QString compressedBzip2TarMime = QStringLiteral("application/x-bzip-compressed-tar");
++ const QString compressedBzip2TarMime = QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.tar.bz2"), QMimeDatabase::MatchExtension).name();
+ const QString compressedXzTarMime = QStringLiteral("application/x-xz-compressed-tar");
+ const QString compressedLzmaTarMime = QStringLiteral("application/x-lzma-compressed-tar");
+ const QString compressedZTarMime = QStringLiteral("application/x-tarz");
+--
+GitLab
diff --git a/kde-apps/ark/files/ark-23.08.2-explicitly-support-application-vnd-efi-iso-mime.patch b/kde-apps/ark/files/ark-23.08.2-explicitly-support-application-vnd-efi-iso-mime.patch
new file mode 100644
index 000000000000..21181a51dbd8
--- /dev/null
+++ b/kde-apps/ark/files/ark-23.08.2-explicitly-support-application-vnd-efi-iso-mime.patch
@@ -0,0 +1,36 @@
+https://invent.kde.org/utilities/ark/-/commit/62d94c62f2fd2052be91dfe565e35a6d43c7d381
+
+From 62d94c62f2fd2052be91dfe565e35a6d43c7d381 Mon Sep 17 00:00:00 2001
+From: Elvis Angelaccio <elvis.angelaccio@kde.org>
+Date: Sat, 14 Oct 2023 15:21:53 +0200
+Subject: [PATCH] Explicitly support new application/vnd.efi.iso mimetype
+
+It has been introduced by the new shared-mime-info 2.3 release. The old
+application/x-cd-image is kept as alias (so ark could still open ISO
+files just fine), but it broke our mimetype unit test.
+
+While at it, we explicitly add the new entry to the list of supported
+mimetypes.
+--- a/autotests/kerfuffle/mimetypetest.cpp
++++ b/autotests/kerfuffle/mimetypetest.cpp
+@@ -38,7 +38,7 @@ void MimeTypeTest::testMimeTypeDetection_data()
+ const QString compressedLzopTarMime = QStringLiteral("application/x-tzo");
+ const QString compressedLrzipTarMime = QStringLiteral("application/x-lrzip-compressed-tar");
+ const QString compressedLz4TarMime = QStringLiteral("application/x-lz4-compressed-tar");
+- const QString isoMimeType = QStringLiteral("application/x-cd-image");
++ const QString isoMimeType = QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.iso"), QMimeDatabase::MatchExtension).name();
+ const QString debMimeType = QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.deb"), QMimeDatabase::MatchExtension).name();
+ const QString xarMimeType = QStringLiteral("application/x-xar");
+ const QString appImageMimeType = QStringLiteral("application/x-iso9660-appimage");
+--- a/plugins/libarchive/kerfuffle_libarchive_readonly.json.cmake
++++ b/plugins/libarchive/kerfuffle_libarchive_readonly.json.cmake
+@@ -71,6 +71,7 @@
+ "application/x-lzop",
+ "application/x-source-rpm",
+ "application/vnd.debian.binary-package",
++ "application/vnd.efi.iso",
+ "application/vnd.ms-cab-compressed",
+ "application/x-xar",
+ "application/x-iso9660-appimage",
+--
+GitLab
diff --git a/kde-apps/ark/files/ark-23.08.2-fix-checks-using-old-ISO-mimetype.patch b/kde-apps/ark/files/ark-23.08.2-fix-checks-using-old-ISO-mimetype.patch
new file mode 100644
index 000000000000..134eb2f8a6a3
--- /dev/null
+++ b/kde-apps/ark/files/ark-23.08.2-fix-checks-using-old-ISO-mimetype.patch
@@ -0,0 +1,36 @@
+https://invent.kde.org/utilities/ark/-/commit/dac14f552fb147bf4c9f759611cdb3b544a500b9
+
+From dac14f552fb147bf4c9f759611cdb3b544a500b9 Mon Sep 17 00:00:00 2001
+From: Elvis Angelaccio <elvis.angelaccio@kde.org>
+Date: Sat, 14 Oct 2023 18:58:22 +0200
+Subject: [PATCH] Fix checks using old ISO mimetype
+
+The inherits() method doesn't work with mimetype aliases, and since shared-mime-info 2.3
+application/x-cd-image is an alias of application/vnd.efi.img
+--- a/kerfuffle/mimetypes.cpp
++++ b/kerfuffle/mimetypes.cpp
+@@ -104,7 +104,8 @@ QMimeType determineMimeType(const QString& filename, MimePreference mp)
+ }
+
+ // #354344: ISO files are currently wrongly detected-by-content.
+- if (mimeFromExtension.inherits(QStringLiteral("application/x-cd-image"))) {
++ // TODO: drop application/x-cd-image once all distributions ship shared-mime-info >= 2.3
++ if (mimeFromExtension.inherits(QStringLiteral("application/vnd.efi.img")) || mimeFromExtension.inherits(QStringLiteral("application/x-cd-image"))) {
+ return mimeFromExtension;
+ }
+
+--- a/part/part.cpp
++++ b/part/part.cpp
+@@ -926,7 +926,9 @@ void Part::slotCompleted()
+ qCWarning(ARK) << "No entry listed by the plugin";
+ displayMsgWidget(KMessageWidget::Warning, xi18nc("@info", "The archive is empty or Ark could not open its content."));
+ } else if (m_model->rowCount() == 1 &&
+- m_model->archive()->mimeType().inherits(QStringLiteral("application/x-cd-image")) &&
++ // TODO: drop application/x-cd-image once all distributions ship shared-mime-info >= 2.3
++ (m_model->archive()->mimeType().inherits(QStringLiteral("application/x-cd-image")) ||
++ m_model->archive()->mimeType().inherits(QStringLiteral("application/vnd.efi.img"))) &&
+ m_model->entryForIndex(m_model->index(0, 0))->fullPath() == QLatin1String("README.TXT")) {
+ qCWarning(ARK) << "Detected ISO image with UDF filesystem";
+ displayMsgWidget(KMessageWidget::Warning, xi18nc("@info", "Ark does not currently support ISO files with UDF filesystem."));
+--
+GitLab
diff --git a/kde-apps/ark/files/ark-23.08.2-fix-support-for-bzip2-format.patch b/kde-apps/ark/files/ark-23.08.2-fix-support-for-bzip2-format.patch
new file mode 100644
index 000000000000..6909f2eee3ca
--- /dev/null
+++ b/kde-apps/ark/files/ark-23.08.2-fix-support-for-bzip2-format.patch
@@ -0,0 +1,121 @@
+https://invent.kde.org/utilities/ark/-/commit/9bcbcb056c43abef88540c54f25bc6c1a78c7c0e
+
+From 9bcbcb056c43abef88540c54f25bc6c1a78c7c0e Mon Sep 17 00:00:00 2001
+From: Elvis Angelaccio <elvis.angelaccio@kde.org>
+Date: Sat, 14 Oct 2023 17:07:16 +0200
+Subject: [PATCH] Fix support for bzip2 format with shared-mime-info 2.3
+
+shared-mime-info 2.3 explicitly separated the mimetypes for bzip2 archives
+from the mimetypes for the (old and deprecated) bzip archives.
+
+libarchive doesn't support the old bzip format, however we can't just
+drop it from ark since we still need it on systems that use an old
+shared-mime-info package.
+
+So for now we drop it only when we are sure that we are using a
+shared-mime-info >= 2.3
+--- a/kerfuffle/mimetypes.cpp
++++ b/kerfuffle/mimetypes.cpp
+@@ -76,6 +76,8 @@ QMimeType determineMimeType(const QString& filename, MimePreference mp)
+ mimeFromContent == db.mimeTypeForName(QStringLiteral("application/gzip"))) ||
+ (mimeFromExtension.inherits(QStringLiteral("application/x-bzip-compressed-tar")) &&
+ mimeFromContent == db.mimeTypeForName(QStringLiteral("application/x-bzip"))) ||
++ (mimeFromExtension.inherits(QStringLiteral("application/x-bzip2-compressed-tar")) &&
++ mimeFromContent == db.mimeTypeForName(QStringLiteral("application/x-bzip2"))) ||
+ (mimeFromExtension.inherits(QStringLiteral("application/x-xz-compressed-tar")) &&
+ mimeFromContent == db.mimeTypeForName(QStringLiteral("application/x-xz"))) ||
+ (mimeFromExtension.inherits(QStringLiteral("application/x-tarz")) &&
+--- a/kerfuffle/pluginmanager.cpp
++++ b/kerfuffle/pluginmanager.cpp
+@@ -165,6 +165,18 @@ QStringList PluginManager::supportedWriteMimeTypes(MimeSortingMode mode) const
+ supported.remove(QStringLiteral("application/x-tzo"));
+ }
+
++ // shared-mime-info 2.3 explicitly separated application/x-bzip2-compressed-tar from application/x-bzip-compressed-tar
++ // since bzip2 is not compatible with the old (and deprecated) bzip format.
++ // See https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/239
++ // With shared-mime-info 2.3 (or newer) we can't have both mimetypes at the same time, since libarchive does not support
++ // the old deprecated bzip format. Also we can't know which version of shared-mime-info the system is actually using.
++ // For these reasons, just take the mimetype from QMimeDatabase to keep the compatibility with any shared-mime-info version.
++ if (supported.contains(QLatin1String("application/x-bzip-compressed-tar")) && supported.contains(QLatin1String("application/x-bzip2-compressed-tar"))) {
++ supported.remove(QLatin1String("application/x-bzip-compressed-tar"));
++ supported.remove(QLatin1String("application/x-bzip2-compressed-tar"));
++ supported.insert(QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.tar.bz2"), QMimeDatabase::MatchExtension).name());
++ }
++
+ if (mode == SortByComment) {
+ return sortByComment(supported);
+ }
+--- a/plugins/libarchive/CMakeLists.txt
++++ b/plugins/libarchive/CMakeLists.txt
+@@ -4,7 +4,7 @@ include_directories(${LibArchive_INCLUDE_DIRS})
+
+ # NOTE: These are the mimetypes for "single-file" archives. They must be defined in the JSON metadata together with the "normal" mimetypes.
+ # However they need to be duplicated here because we need to pass them as C++ define to the plugin (see LIBARCHIVE_RAW_MIMETYPES define below).
+-set(SUPPORTED_LIBARCHIVE_RAW_MIMETYPES "application/x-compress;application/gzip;application/x-bzip;application/zlib;application/zstd;application/x-lzma;application/x-xz;application/x-lz4;application/x-lzip;application/x-lrzip;application/x-lzop;")
++set(SUPPORTED_LIBARCHIVE_RAW_MIMETYPES "application/x-compress;application/gzip;application/x-bzip;application/x-bzip2;application/zlib;application/zstd;application/x-lzma;application/x-xz;application/x-lz4;application/x-lzip;application/x-lrzip;application/x-lzop;")
+
+ set(INSTALLED_LIBARCHIVE_PLUGINS "")
+
+--- a/plugins/libarchive/kerfuffle_libarchive.json.cmake
++++ b/plugins/libarchive/kerfuffle_libarchive.json.cmake
+@@ -53,6 +53,7 @@
+ "application/x-tar",
+ "application/x-compressed-tar",
+ "application/x-bzip-compressed-tar",
++ "application/x-bzip2-compressed-tar",
+ "application/x-tarz",
+ "application/x-xz-compressed-tar",
+ "application/x-lzma-compressed-tar",
+@@ -119,6 +120,11 @@
+ "CompressionLevelMax": 9,
+ "CompressionLevelMin": 1
+ },
++ "application/x-bzip2-compressed-tar": {
++ "CompressionLevelDefault": 9,
++ "CompressionLevelMax": 9,
++ "CompressionLevelMin": 1
++ },
+ "application/x-compressed-tar": {
+ "CompressionLevelDefault": 6,
+ "CompressionLevelMax": 9,
+--- a/plugins/libarchive/kerfuffle_libarchive_readonly.json.cmake
++++ b/plugins/libarchive/kerfuffle_libarchive_readonly.json.cmake
+@@ -61,6 +61,7 @@
+ "application/x-compress",
+ "application/gzip",
+ "application/x-bzip",
++ "application/x-bzip2",
+ "application/x-lzma",
+ "application/x-xz",
+ "application/zlib",
+--- a/plugins/libarchive/libarchiveplugin.cpp
++++ b/plugins/libarchive/libarchiveplugin.cpp
+@@ -13,6 +13,7 @@
+
+ #include <KLocalizedString>
+
++#include <QMimeDatabase>
+ #include <QThread>
+ #include <QFileInfo>
+ #include <QDir>
+@@ -34,6 +35,17 @@ LibarchivePlugin::LibarchivePlugin(QObject *parent, const QVariantList &args)
+
+ #ifdef LIBARCHIVE_RAW_MIMETYPES
+ m_rawMimetypes = QStringLiteral(LIBARCHIVE_RAW_MIMETYPES).split(QLatin1Char(':'), Qt::SkipEmptyParts);
++ // shared-mime-info 2.3 explicitly separated application/x-bzip2 from application/x-bzip
++ // since bzip2 is not compatible with the old (and deprecated) bzip format.
++ // See https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/239
++ // With shared-mime-info 2.3 (or newer) we can't have both mimetypes at the same time, since libarchive does not support
++ // the old deprecated bzip format. Also we can't know which version of shared-mime-info the system is actually using.
++ // For these reasons, just take the mimetype from QMimeDatabase to keep the compatibility with any shared-mime-info version.
++ if (m_rawMimetypes.contains(QLatin1String("application/x-bzip")) && m_rawMimetypes.contains(QLatin1String("application/x-bzip2"))) {
++ m_rawMimetypes.removeAll(QLatin1String("application/x-bzip"));
++ m_rawMimetypes.removeAll(QLatin1String("application/x-bzip2"));
++ m_rawMimetypes.append(QMimeDatabase().mimeTypeForFile(QStringLiteral("dummy.bz2"), QMimeDatabase::MatchExtension).name());
++ }
+ qCDebug(ARK) << "# available raw mimetypes:" << m_rawMimetypes.count();
+ #endif
+ }
+--
+GitLab
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-10-15 15:23 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-04-20 9:51 [gentoo-commits] repo/gentoo:master commit in: kde-apps/ark/, kde-apps/ark/files/ Andreas Sturmlechner
-- strict thread matches above, loose matches on Subject: below --
2019-08-13 5:53 Andreas Sturmlechner
2020-11-25 18:13 Andreas Sturmlechner
2021-02-04 14:07 Andreas Sturmlechner
2023-10-12 13:23 Andreas Sturmlechner
2023-10-15 15:23 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox