From 317479dc9750250ac9617eb1c13b784016d59f30 Mon Sep 17 00:00:00 2001 From: SolveFinder Date: Jul 17 2023 19:59:41 +0000 Subject: [PATCH 1/7] libre/ktorrent without qt5-webengine --- diff --git a/libre/ktorrent/PKGBUILD b/libre/ktorrent/PKGBUILD new file mode 100644 index 0000000..5af3b8d --- /dev/null +++ b/libre/ktorrent/PKGBUILD @@ -0,0 +1,42 @@ +# Maintainer: Ronald van Haren +# Contributor: Travis Willard +# Contributor: Georg Grabler + +pkgname=ktorrent +pkgver=23.04.3 +pkgrel=1 +pkgrel+=.parabola1 +pkgdesc='A powerful BitTorrent client for KDE' +pkgdesc+=', without nonfree qt5-webengine support' +arch=(x86_64) +arch+=(i686 armv7h) +url='https://apps.kde.org/ktorrent/' +license=(GPL2) +depends=(libktorrent kcmutils knotifyconfig kparts phonon-qt5) +makedepends=(extra-cmake-modules kdoctools boost plasma-workspace kdnssd taglib syndication kplotting geoip) +optdepends=('plasma-workspace: shutdown plugin' 'kdnssd: zeroconf plugin' 'taglib: mediaplayer plugin' 'geoip: info widget plugin' + 'syndication: syndication plugin' 'kplotting: statistics plugin') +groups=(kde-applications kde-network) +source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig} + 'libre.patch') +sha256sums=('e507cb5b176b11bbe9293ee92cb026838498e1f8bfad5097c5fd13b8ec8e069f' + 'SKIP' + 'aa44d844895294799f5d52838af3dc314f2005a892b365beed76c5de6a374a10') +validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid + F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck + D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker + +prepare() { + cd "$pkgname-$pkgver" + patch -p1 -i ../libre.patch + cd .. +} + +build() { + cmake -B build -S $pkgname-$pkgver + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build +} diff --git a/libre/ktorrent/keys/pgp/CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7.asc b/libre/ktorrent/keys/pgp/CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7.asc new file mode 100644 index 0000000..07050e6 --- /dev/null +++ b/libre/ktorrent/keys/pgp/CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7.asc @@ -0,0 +1,29 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBFfNZD4BEACo0YKCUEhTY7v8VZVw3csAtnsRSFQ18G8xfYIt7mJEBrtfiGG4 +g28EjNeWQfN8wGIaAeRGl5nb7s9RRpxXStUu719jGX1Z9Sr8p/JOmBS5kdfAtYId +9Cl3VsGRvf4Smg1ClrEv6tQ97j+d1FY8QfgW/GS46YBOEeOFVQRtfi7Yv9lZkiBF +rzP0Nr7JV9u1GkBsFgNkVuYs/3RDYULItBwGFerduOyQCOt819QvHHSZkXqJWwNR +OA6lc8gW36lKbDHoZ1jSkDnDV0bW0cX1/6WJSzWYdcPiceA1vj/VDg0Kr23SVQ1P +yPvBirT7ToirQm6KrIiKHWLSg156ht8/K2C1Dgypf+YMseMbHQxVLrI2p4zpmxu3 +B2SrSj3ImM5FO0XGd1gxn/qywNVJDQBfcYnndksD2i/9/Es8I/F6OymBZl4HWBvx +7ixm2JPXkmwVPEC/lJn3eCBb1fAaJSlroHtaAEteCWuE5/Mg/uYEh1UeAstP47N3 +P0B3l1E4Ccw1ne2/O1BdsnXeUaI3YVYz9aZkVlL7ywda3h/goRKxc1b18bmgu/Ed +QmcTEMj29B3szMpetWNt1ZbaMJzfDw+z+SiQ3toOTUiqMuWq+l+JK0dVUzOvpGhG +VHv5m9CtJFP671ivEc4it0hJRH5kdW9aNbeG0g9TxHQqQMJIpeLvRq5WKwARAQAB +tCFBbGJlcnQgQXN0YWxzIENpZCA8YWFjaWRAa2RlLm9yZz6JAlQEEwEIAD4CGwMF +CwkIBwIGFQgJCgsCBBYCAwECHgECF4AWIQTKJixsg95NL7KKMyo6ak24Oeqm1wUC +XVO22wUJB2eGHQAKCRA6ak24Oeqm176hD/9QGNeGm0UX/X8PY6OManUuC5tl/RI2 +xo5ZbckxgSlNKgdhuE9hcrCOX74smdFKkk3EoxfXTa+YaarjXPq+ZfqgOiAk7TyU +BjZiiRiqgg7rWvsUa0ifxP++oN8aV9bTT8+WvkU2nXEPLtvaoSTXn/zE1bv7dIhB +13u2Du3PIVoUQBfcg9tyNkMQ+ifAQxjUghbPKeqsoql1bqY3v561SVg6D+IqeA5s +3Q8xxve4wc8vFgwRsWm4ugFTGRHdLhAFc3LlFxmFDhPMNvQguPh9MifBGthFcHBd +F2lUTdXffhiKpCQ3+qUP/YP0rurL+Ke8aBNBXlU68+2l0JrCjySnDj3a5RKWOgWk +2SSadUia06GGHRBaTVs5AAOfL0vaIbeUMxSv7Itg8jkqH2/9PdoCDOFznNS1C6o+ +MxtPFmjZSGna5wSlyUobCrcRGL1mD5w4r16MKFICSVQM5ns617bm0tWS0qyAARid +Ng3baLoStf64wyk5QUwfVj1huQzRmk7os3OOik44J+nF8BqloW0bAsJ3mFgJVqLW +5U6GpbURaVsnxgnu4VuRedHg/JC1gy7JqNASq3vlExmBJDsNZjgPWKlnUezyxM0+ +UP3OGb4AVPm7yVUZWB3XuPyk2565rOWEFyXy1/oOrHAgijD5d4FPGe4sxy0WH88E +z+nBNcht+1juVw== +=t/sG +-----END PGP PUBLIC KEY BLOCK----- diff --git a/libre/ktorrent/keys/pgp/D81C0CB38EB725EF6691C385BB463350D6EF31EF.asc b/libre/ktorrent/keys/pgp/D81C0CB38EB725EF6691C385BB463350D6EF31EF.asc new file mode 100644 index 0000000..ac8562f --- /dev/null +++ b/libre/ktorrent/keys/pgp/D81C0CB38EB725EF6691C385BB463350D6EF31EF.asc @@ -0,0 +1,63 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=P9hR +-----END PGP PUBLIC KEY BLOCK----- diff --git a/libre/ktorrent/keys/pgp/F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87.asc b/libre/ktorrent/keys/pgp/F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87.asc new file mode 100644 index 0000000..ea1f1fc --- /dev/null +++ b/libre/ktorrent/keys/pgp/F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87.asc @@ -0,0 +1,30 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQENBFlRpEYBCACecX3F5xzF6wzeXiuBAuHq74bVHON7I89U+ROloEWYUYMRNTz2 +l1BkNHWRTTqfmPO7LhMY6g4gOPeQVCwgTGVjI8bn6sJd3SFdeiRvvaFBpmn7SjBd +s1rkKKJIjeMUl1w8dFnmf22V0PnhSSepmNwmd8RQnl1umCTSihDJydGxixw6ZNhr +4tzbn+Rfadybli61H2hc6/JJHe91i+V1ltgkHwGcs6MUCqXgSL0dUIJs49gSrla0 +gkrcJYF5MWyGxKlajbCjkMCJtN+8bhEmpc4Oe8NZ33arEWnlyh1RVgi5p3RTNApY +Pxctcg57ExczbKn9R8VLYmPJ7Di3gX0cmotrABEBAAG0HkNocmlzdG9waCBGZWNr +IDxjZmVja0BrZGUub3JnPokBTgQTAQgAOBYhBPIydeS/EK/B32kUptvSzok+LRyH +BQJZUaRGAhsDBQsJCAcCBhUICQoLAgQWAgMBAh4BAheAAAoJENvSzok+LRyHeWcH +/A1E2d5UL2oHsrLIolIiWMmheRorcac+0Hgll1mMUQ5tfPH+LVzgrlMMG7g1Amky +Hk1qZ5oszrXUg2H/28/cOF/WVlHgQcSGr7aQbHieUivPtZMua+lHUdILC3UV2l1V +22Zz8HIDl4kxmK6EpoNIOK5Mo550S3e3AKYq5pa/FlckCV9/JoK9+thRCsoAAj3g +oWwTx9RY5pmLPtklqyC5961Je7KHSIVqapJ/G5DX+yfOC1Psc+vIfyQVqnaefZPW +dIxXQQhn46i6IRRimw94Gkwca+wslkimt/L/Z7ByZqBsXMyixSQPq+dtSO9CMgr0 +WxTX78wATkTGzh5oSwKCMga5AQ0EWVGkRgEIAMuUnfNfrdx8xn7Jjcm6MGkB/Yep +XVysrlHxUUS6q7629JdSlVWnQo9GFO927GZClWI9rCGLQMfZZk/jfgKV/nkpLod3 +I51remOg7ohSkwRLAdwJ7xCuNrafhKntFh5/NxuaXxaVIY1muvZbTAsIRyks2jCE +pUoK43Z8dr4/QPhBstssB8czDME1Tw4r7X+RwjFrQqDItFv6f0BIdEwR462khLEw +vbXRN1nzs+6Y0foJbJCS3VDZC9scsrrMVMV+OEBF3DXp9ypSWsLnkuBPPIus6Y8G +j7JvYUBtrUhKL5a7o5G3Te9YhwGgOKVqWlncs6ZLiOV6HnG0BO3xdPcn09cAEQEA +AYkBNgQYAQgAIBYhBPIydeS/EK/B32kUptvSzok+LRyHBQJZUaRGAhsMAAoJENvS +zok+LRyHaRMIAI5YaTfGeQDmR08I2LvztOEH/3YF63cNCP/Vp+WAtF/Kr8mMFpFS +oTHJNMi7p964lHYTTPzPeQzLzV3ayiQjq+DHs6HFmYl73ukzlGGc7KDlyhugQjm6 +AqNtqqXAVykaixnFj8jf2WtQGl1hqpm8GhDRBmZycqMqne4tZokujhtpdC6suRvc +AB0S+lRZUwrY05k6Nc1A8J8k/lxXXa9KzXNaqKsqppgBZoqKN3zS4146uEjvuLsh +CarZ/6uUidvP0LBTR7HKye5A9Qdbjlg9qvtR7YF3hqy4g1PRNZWRlsQ1pkCdCTfN +TA+HYUzK0ESVpY72lWvH49lNg+ufZ1bKvKI= +=MZJ5 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/libre/ktorrent/libre.patch b/libre/ktorrent/libre.patch new file mode 100644 index 0000000..9359af4 --- /dev/null +++ b/libre/ktorrent/libre.patch @@ -0,0 +1,33 @@ +From 4e021baa456b18cc7699145daed42d5aad961d58 Mon Sep 17 00:00:00 2001 +From: SolveFinder +Date: Fri, 14 Jul 2023 14:50:31 +0300 +Subject: [PATCH] Removing WebEngineWidgets + +--- + CMakeLists.txt | 10 +--------- + 1 file changed, 1 insertion(+), 9 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8f0f9b0..c6762b6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -123,15 +123,7 @@ if(KF5Syndication_FOUND) + set(HAVE_KF5Syndication 1) + endif() + +-find_package(Qt${QT_MAJOR_VERSION}WebEngineWidgets ${QT_MIN_VERSION}) +-set_package_properties(Qt${QT_MAJOR_VERSION}WebEngineWidgets +- PROPERTIES +- TYPE OPTIONAL +- PURPOSE "Required for KTorrent's search and syndication plugins" +-) +-if(Qt${QT_MAJOR_VERSION}WebEngineWidgets_FOUND) +- set(HAVE_Qt${QT_MAJOR_VERSION}WebEngineWidgets 1) +-endif() ++set(HAVE_Qt${QT_MAJOR_VERSION}WebEngineWidgets 0) + + find_package(KF5DNSSD ${KF5_MIN_VERSION}) + set_package_properties(KF5DNSSD +-- +2.41.0 + From 72c35cfd5c105ee079f480606140f62479da9518 Mon Sep 17 00:00:00 2001 From: SolveFinder Date: Jul 18 2023 06:43:20 +0000 Subject: [PATCH 2/7] libre/parabola-appstream data without info about nonfree packages --- diff --git a/libre/parabola-appstream-data/PKGBUILD b/libre/parabola-appstream-data/PKGBUILD new file mode 100644 index 0000000..b510760 --- /dev/null +++ b/libre/parabola-appstream-data/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer (arch): Antonio Rojas + +_pkgname=archlinux-appstream-data +pkgname=parabola-appstream-data +pkgver=20230715 +pkgrel=1 +pkgrel+=.parabola1 +pkgdesc='Parabola application database for AppStream-based software centers' +arch=(any) +url='https://www.parabola.nu' +license=(GPL) +depends=() +makedepends=(python) +source=(https://git.parabola.nu/blacklist.git/plain/blacklist.txt + appstream_fix.py) +noextract=() +provides=(archlinux-appstream-data) +for _repo in core extra multilib; do + source+=($_repo-$pkgver.xml.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/Components-x86_64.xml.gz + $_repo-icons-48x48-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-48x48.tar.gz + $_repo-icons-64x64-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-64x64.tar.gz + $_repo-icons-128x128-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-128x128.tar.gz) + noextract+=($_repo.xml.gz-$pkgver $_repo-icons-{48x48,64x64,128x128}-$pkgver.tar.gz) +done +sha256sums=('SKIP' + 'b73f41e9823298a29e0ed3e05fd04ccec0606f02b667bc6a83469f57a24568ec' + 'f32770b001d90903d45ac0ee05898e2c57d99bde560eac9ae2357b311300e681' + '7989bb311baa38ef545250282aa065d23281c46dfb8faabe4c653487bdbded5c' + '198c7aec4989984166174defe7b7eafda54d1f4ab4f83097e2d11ac1a9193fcf' + '7989bb311baa38ef545250282aa065d23281c46dfb8faabe4c653487bdbded5c' + 'ae65e6fe2272545a91c04e3d59986ebe89cc984be19fc587d8e0afa1b1081cee' + '943b53894e561cc831d3e9b0ba323a56695befe1d0c2762be92953c54df6c2af' + '064f05c31e2eb7b2f5c54ee05a4701681860d35b5d376959775ff15382aca82a' + 'c88cc504c99ddc31e34fe6af7a2c84a3ddf8d7573c6b8f4683e065b88c8621a4' + '9e364b5afec4390bc6aaa8e3ac385e49130b7224340f5c8cc57def89b5b85fa1' + '2e6562ca40e3c8f8fcd22c6a6b3e3aab513d3fa9f45ad36c74aa16a4466b61b1' + '4369ccd47698a55da9cfa441322b8b8250955683de4e6d496a568df4162e3625' + '242bacebf03766e06f6683c509a2f31e7e96e6878f1b2e936d0d2e16441e43a9') + +package() { + mkdir -p "$pkgdir"/usr/share/app-info/{icons/archlinux-arch-{core,extra,multilib}/{48x48,64x64,128x128},xmls} + for _repo in core extra multilib; do + tar -xzf $_repo-icons-48x48-$pkgver.tar.gz -C "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/48x48 + tar -xzf $_repo-icons-64x64-$pkgver.tar.gz -C "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/64x64 + tar -xzf $_repo-icons-128x128-$pkgver.tar.gz -C "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/128x128 + python appstream_fix.py $_repo-$pkgver.xml "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo + rm $_repo-$pkgver.xml.gz + gzip -k $_repo-$pkgver.xml + install -m644 $_repo-$pkgver.xml.gz "$pkgdir"/usr/share/app-info/xmls/$_repo.xml.gz + done +} diff --git a/libre/parabola-appstream-data/appstream_fix.py b/libre/parabola-appstream-data/appstream_fix.py new file mode 100644 index 0000000..90c205a --- /dev/null +++ b/libre/parabola-appstream-data/appstream_fix.py @@ -0,0 +1,59 @@ +from xml.etree import ElementTree +from os import remove +from sys import argv + +# With internet: +# import requests +# blacklist_url = 'https://git.parabola.nu/blacklist.git/plain/blacklist.txt' +# blackdict = {i.split(':')[:2][0]: i.split(':')[:2][1] for i in requests.get(blacklist_url).text.split('\n') if len(i) > 1 and i.split(':')[:2][0] != i.split(':')[:2][1]} +################ + +# Without internet: +blackdict = {i.split(':')[:2][0]: i.split(':')[:2][1] for i in open('blacklist.txt', 'r').read().split('\n') if len(i) > 1 and i.split(':')[:2][0] != i.split(':')[:2][1]} +################### +# blackdict: {'package': 'libre_replacement'} + +blacklist = [k for k, v in blackdict.items() if v == ''] +# blacklist: ['package_without_replacement1', ...] + + +def fix(xml_path, icons_path): + tree = ElementTree.parse(xml_path) + xml = tree.getroot() + to_remove = { + 'xml': [], + 'icons': { + '48': [], + '64': [], + '128': [] + } + } + for c in xml.iter('component'): + pkg = c.find('pkgname').text + if pkg in blacklist: + for i in c.findall('icon'): + if i.get('type') == 'cached': + to_remove['icons'][i.get('width')].append(i.text) + to_remove['xml'].append(c) + elif pkg in blackdict.keys(): + c.find('pkgname').text = blackdict[pkg] + # This is not accurate, as description wasn't modified + print(f'Replaced "{pkg}" with "{blackdict[pkg]}"') + # else: + # if c.find('project_license') is None: + # print('Unknown license!', pkg) + + for i in to_remove['xml']: + pkg = i.find('pkgname').text + xml.remove(i) + print(f'Removed blacklisted "{pkg}"') + + for k, v in to_remove['icons'].items(): + for i in set(v): + remove(f'{icons_path}/{k}x{k}/{i}') + print(f'Removed {k}x{k}/{i}') + # 'Unicode' reduces file size compared to default + tree.write(xml_path, encoding='Unicode') + +# Usage: python appstream_fix.py path_to_xml path_to_icon_dir +fix(argv[1], argv[2]) From 6a642638f392dffe7edad19b9c7f5dbe88e6afc3 Mon Sep 17 00:00:00 2001 From: Solve Finder Date: Jul 22 2023 09:22:07 +0000 Subject: [PATCH 3/7] Update libre/parabola-appstream-data/PKGBUILD Make sure that all packages present in repo --- diff --git a/libre/parabola-appstream-data/PKGBUILD b/libre/parabola-appstream-data/PKGBUILD index b510760..f5ac110 100644 --- a/libre/parabola-appstream-data/PKGBUILD +++ b/libre/parabola-appstream-data/PKGBUILD @@ -14,28 +14,32 @@ makedepends=(python) source=(https://git.parabola.nu/blacklist.git/plain/blacklist.txt appstream_fix.py) noextract=() -provides=(archlinux-appstream-data) +# provides=(archlinux-appstream-data) for _repo in core extra multilib; do source+=($_repo-$pkgver.xml.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/Components-x86_64.xml.gz $_repo-icons-48x48-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-48x48.tar.gz $_repo-icons-64x64-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-64x64.tar.gz - $_repo-icons-128x128-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-128x128.tar.gz) - noextract+=($_repo.xml.gz-$pkgver $_repo-icons-{48x48,64x64,128x128}-$pkgver.tar.gz) + $_repo-icons-128x128-$pkgver.tar.gz::https://sources.archlinux.org/other/packages/$_pkgname/$pkgver/$_repo/icons-128x128.tar.gz + https://repo.parabola.nu/$_repo/os/x86_64/$_repo.db.tar.gz) + noextract+=($_repo.xml.gz-$pkgver $_repo-icons-{48x48,64x64,128x128}-$pkgver.tar.gz $_repo.db.tar.gz) done sha256sums=('SKIP' - 'b73f41e9823298a29e0ed3e05fd04ccec0606f02b667bc6a83469f57a24568ec' + '807bf42104f92313ec10f339556fe95ba397bf258e0b2a08df7e42c5f272e0d4' 'f32770b001d90903d45ac0ee05898e2c57d99bde560eac9ae2357b311300e681' '7989bb311baa38ef545250282aa065d23281c46dfb8faabe4c653487bdbded5c' '198c7aec4989984166174defe7b7eafda54d1f4ab4f83097e2d11ac1a9193fcf' '7989bb311baa38ef545250282aa065d23281c46dfb8faabe4c653487bdbded5c' + 'SKIP' 'ae65e6fe2272545a91c04e3d59986ebe89cc984be19fc587d8e0afa1b1081cee' '943b53894e561cc831d3e9b0ba323a56695befe1d0c2762be92953c54df6c2af' '064f05c31e2eb7b2f5c54ee05a4701681860d35b5d376959775ff15382aca82a' 'c88cc504c99ddc31e34fe6af7a2c84a3ddf8d7573c6b8f4683e065b88c8621a4' + 'SKIP' '9e364b5afec4390bc6aaa8e3ac385e49130b7224340f5c8cc57def89b5b85fa1' '2e6562ca40e3c8f8fcd22c6a6b3e3aab513d3fa9f45ad36c74aa16a4466b61b1' '4369ccd47698a55da9cfa441322b8b8250955683de4e6d496a568df4162e3625' - '242bacebf03766e06f6683c509a2f31e7e96e6878f1b2e936d0d2e16441e43a9') + '242bacebf03766e06f6683c509a2f31e7e96e6878f1b2e936d0d2e16441e43a9' + 'SKIP') package() { mkdir -p "$pkgdir"/usr/share/app-info/{icons/archlinux-arch-{core,extra,multilib}/{48x48,64x64,128x128},xmls} @@ -43,7 +47,7 @@ package() { tar -xzf $_repo-icons-48x48-$pkgver.tar.gz -C "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/48x48 tar -xzf $_repo-icons-64x64-$pkgver.tar.gz -C "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/64x64 tar -xzf $_repo-icons-128x128-$pkgver.tar.gz -C "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/128x128 - python appstream_fix.py $_repo-$pkgver.xml "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo + python appstream_fix.py $_repo-$pkgver.xml "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo $_repo rm $_repo-$pkgver.xml.gz gzip -k $_repo-$pkgver.xml install -m644 $_repo-$pkgver.xml.gz "$pkgdir"/usr/share/app-info/xmls/$_repo.xml.gz From e88c0c08273cbe321ecf23fec0e55562bceaeaa1 Mon Sep 17 00:00:00 2001 From: Solve Finder Date: Jul 22 2023 09:23:37 +0000 Subject: [PATCH 4/7] Update libre/parabola-appstream-data/appstream_fix.py Make sure that all packages present in repo --- diff --git a/libre/parabola-appstream-data/appstream_fix.py b/libre/parabola-appstream-data/appstream_fix.py index 90c205a..84f0b13 100644 --- a/libre/parabola-appstream-data/appstream_fix.py +++ b/libre/parabola-appstream-data/appstream_fix.py @@ -1,23 +1,37 @@ from xml.etree import ElementTree -from os import remove +from os import remove, listdir, mkdir, system, chdir from sys import argv +from shutil import rmtree, copy +from copy import deepcopy # With internet: # import requests # blacklist_url = 'https://git.parabola.nu/blacklist.git/plain/blacklist.txt' -# blackdict = {i.split(':')[:2][0]: i.split(':')[:2][1] for i in requests.get(blacklist_url).text.split('\n') if len(i) > 1 and i.split(':')[:2][0] != i.split(':')[:2][1]} +# blackdict = {i.split(':')[:2][0]: i.split(':')[:2][1] for i in requests.get(blacklist_url).text.split('\n') if len(i) > 1} ################ # Without internet: -blackdict = {i.split(':')[:2][0]: i.split(':')[:2][1] for i in open('blacklist.txt', 'r').read().split('\n') if len(i) > 1 and i.split(':')[:2][0] != i.split(':')[:2][1]} +blackdict = {i.split(':')[:2][0]: i.split(':')[:2][1] for i in open('blacklist.txt', 'r').read().split('\n') if len(i) > 1} ################### # blackdict: {'package': 'libre_replacement'} blacklist = [k for k, v in blackdict.items() if v == ''] # blacklist: ['package_without_replacement1', ...] +repo = argv[3] -def fix(xml_path, icons_path): +# Full list of packages from repository +mkdir(repo) +copy(f'{repo}.db.tar.gz', f'{repo}/{repo}.db') +chdir(repo) +system(f'tar -xf {repo}.db; rm {repo}.db') +repo_pkgs = ['-'.join(i.split('-')[:-2]) for i in listdir()] +chdir('..') +rmtree(repo) + + + +def fix(xml_path, icons_path, packages): tree = ElementTree.parse(xml_path) xml = tree.getroot() to_remove = { @@ -30,15 +44,18 @@ def fix(xml_path, icons_path): } for c in xml.iter('component'): pkg = c.find('pkgname').text - if pkg in blacklist: + if pkg in blacklist or pkg not in packages and pkg not in blackdict.keys(): for i in c.findall('icon'): if i.get('type') == 'cached': to_remove['icons'][i.get('width')].append(i.text) to_remove['xml'].append(c) + if pkg not in blacklist and pkg not in packages: + print(f'Missing "{pkg}"') elif pkg in blackdict.keys(): - c.find('pkgname').text = blackdict[pkg] - # This is not accurate, as description wasn't modified - print(f'Replaced "{pkg}" with "{blackdict[pkg]}"') + if pkg != blackdict[pkg]: + c.find('pkgname').text = blackdict[pkg] + # This is not accurate, as description wasn't modified + print(f'Replaced "{pkg}" with "{blackdict[pkg]}"') # else: # if c.find('project_license') is None: # print('Unknown license!', pkg) @@ -52,8 +69,9 @@ def fix(xml_path, icons_path): for i in set(v): remove(f'{icons_path}/{k}x{k}/{i}') print(f'Removed {k}x{k}/{i}') + # 'Unicode' reduces file size compared to default tree.write(xml_path, encoding='Unicode') -# Usage: python appstream_fix.py path_to_xml path_to_icon_dir -fix(argv[1], argv[2]) +# Usage: python appstream_fix.py path_to_xml path_to_icon_dir repo_name +fix(argv[1], argv[2], repo_pkgs) From 8b2a1fef9977b1c1aaa88f91637687ed941b1877 Mon Sep 17 00:00:00 2001 From: Solve Finder Date: Aug 07 2023 08:50:19 +0000 Subject: [PATCH 5/7] Update libre/parabola-appstream-data/PKGBUILD --- diff --git a/libre/parabola-appstream-data/PKGBUILD b/libre/parabola-appstream-data/PKGBUILD index f5ac110..db274d6 100644 --- a/libre/parabola-appstream-data/PKGBUILD +++ b/libre/parabola-appstream-data/PKGBUILD @@ -12,7 +12,9 @@ license=(GPL) depends=() makedepends=(python) source=(https://git.parabola.nu/blacklist.git/plain/blacklist.txt - appstream_fix.py) + appstream_fix.py + iceweasel_iceweasel.svg::https://git.parabola.nu/packages/iceweasel.git/plain/src/branding/iceweasel_icon.svg + icedove_icedove.svg::https://git.parabola.nu/packages/icedove.git/plain/src/logo/icedove_icon.svg) noextract=() # provides=(archlinux-appstream-data) for _repo in core extra multilib; do @@ -24,7 +26,9 @@ for _repo in core extra multilib; do noextract+=($_repo.xml.gz-$pkgver $_repo-icons-{48x48,64x64,128x128}-$pkgver.tar.gz $_repo.db.tar.gz) done sha256sums=('SKIP' - '807bf42104f92313ec10f339556fe95ba397bf258e0b2a08df7e42c5f272e0d4' + '63d0d25e8980a97c3a122f050827bbf97bbe81bac550f9e300eda0d3b90abd09' + 'SKIP' + 'SKIP' 'f32770b001d90903d45ac0ee05898e2c57d99bde560eac9ae2357b311300e681' '7989bb311baa38ef545250282aa065d23281c46dfb8faabe4c653487bdbded5c' '198c7aec4989984166174defe7b7eafda54d1f4ab4f83097e2d11ac1a9193fcf' @@ -51,5 +55,10 @@ package() { rm $_repo-$pkgver.xml.gz gzip -k $_repo-$pkgver.xml install -m644 $_repo-$pkgver.xml.gz "$pkgdir"/usr/share/app-info/xmls/$_repo.xml.gz + for _icon in iceweasel_iceweasel.svg icedove_icedove.svg; do + install -m644 "$srcdir"/$_icon "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/48x48/$_icon + install -m644 "$srcdir"/$_icon "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/64x64/$_icon + install -m644 "$srcdir"/$_icon "$pkgdir"/usr/share/app-info/icons/archlinux-arch-$_repo/128x128/$_icon + done done } From f73e6cad4bf315bc5dd5e8eb7a2bd1fe9b06b3a8 Mon Sep 17 00:00:00 2001 From: Solve Finder Date: Aug 07 2023 08:51:44 +0000 Subject: [PATCH 6/7] Fixing iceweasel and icedove --- diff --git a/libre/parabola-appstream-data/appstream_fix.py b/libre/parabola-appstream-data/appstream_fix.py index 84f0b13..4a08e38 100644 --- a/libre/parabola-appstream-data/appstream_fix.py +++ b/libre/parabola-appstream-data/appstream_fix.py @@ -2,7 +2,6 @@ from xml.etree import ElementTree from os import remove, listdir, mkdir, system, chdir from sys import argv from shutil import rmtree, copy -from copy import deepcopy # With internet: # import requests @@ -30,6 +29,19 @@ chdir('..') rmtree(repo) +def fix_specific(pkgname, xml_component): + if pkgname == 'firefox': + fixed_name = 'iceweasel' + elif pkgname == 'thunderbird': + fixed_name = 'icedove' + for i in xml_component.iter(): + i.text = i.text.replace(f'{pkgname}.png', f'{fixed_name}.svg')\ + .replace(pkgname, fixed_name)\ + .replace(pkgname.title(), fixed_name.title()) + if pkgname == 'firefox': + i.text = i.text.replace('Standalone web browser from mozilla.org', + 'Standalone web browser derived from Mozilla Firefox') + def fix(xml_path, icons_path, packages): tree = ElementTree.parse(xml_path) @@ -52,9 +64,11 @@ def fix(xml_path, icons_path, packages): if pkg not in blacklist and pkg not in packages: print(f'Missing "{pkg}"') elif pkg in blackdict.keys(): - if pkg != blackdict[pkg]: + if pkg in ['thunderbird', 'firefox']: + fix_specific(pkg, c) + print(f'Replaced "{pkg}" with "{blackdict[pkg]}" (fixed)') + elif pkg != blackdict[pkg]: c.find('pkgname').text = blackdict[pkg] - # This is not accurate, as description wasn't modified print(f'Replaced "{pkg}" with "{blackdict[pkg]}"') # else: # if c.find('project_license') is None: From 23d8b092c3333bb00cb8411c9c84db6e2297af0d Mon Sep 17 00:00:00 2001 From: Solve Finder Date: Aug 07 2023 08:56:17 +0000 Subject: [PATCH 7/7] Update libre/parabola-appstream-data/PKGBUILD --- diff --git a/libre/parabola-appstream-data/PKGBUILD b/libre/parabola-appstream-data/PKGBUILD index db274d6..bbbe188 100644 --- a/libre/parabola-appstream-data/PKGBUILD +++ b/libre/parabola-appstream-data/PKGBUILD @@ -26,7 +26,7 @@ for _repo in core extra multilib; do noextract+=($_repo.xml.gz-$pkgver $_repo-icons-{48x48,64x64,128x128}-$pkgver.tar.gz $_repo.db.tar.gz) done sha256sums=('SKIP' - '63d0d25e8980a97c3a122f050827bbf97bbe81bac550f9e300eda0d3b90abd09' + '1cfb7b2c4075f4f8edc832e270db4aa9092c986a02ce5a58638da1d0d25c38d3' 'SKIP' 'SKIP' 'f32770b001d90903d45ac0ee05898e2c57d99bde560eac9ae2357b311300e681'