Compare commits
95 commits
edge
...
gitlab-fos
Author | SHA1 | Date | |
---|---|---|---|
b59929e82a | |||
85764269af | |||
1e0c3cd01f | |||
c5fc10b53d | |||
548b889d5e | |||
5a59874811 | |||
1958bae670 | |||
e651f24ad8 | |||
ba71cb700d | |||
5100af70c5 | |||
28b2be2fdb | |||
8fcddfd555 | |||
541b5c03f5 | |||
7d1eb1acd1 | |||
8acf280f53 | |||
0901922683 | |||
3a1d0dbc58 | |||
b87d30fff2 | |||
6c3e374a4f | |||
228e5dc632 | |||
8c9db59fb8 | |||
8a107fb7bd | |||
e61b92462a | |||
ea8c2410d2 | |||
fb675c7e0d | |||
2ebd5a7f95 | |||
e4941f9419 | |||
d77620cf6d | |||
739955203a | |||
203915a8ed | |||
1a4e9f5409 | |||
f1573c5d51 | |||
a3fff41b9b | |||
7e003770a4 | |||
ef224859e2 | |||
789bf106dc | |||
734dbfd42e | |||
50a5dfc5ba | |||
5a0233d8df | |||
94bdd0d626 | |||
c5ba2fd706 | |||
2e43c8fa73 | |||
c7c6c5734f | |||
cf08702b85 | |||
db8fbfc9a3 | |||
fa520b2599 | |||
47e8c8d4f5 | |||
e8336635fe | |||
e1230d065a | |||
76aee0710e | |||
d83a9dbbda | |||
8082ac390f | |||
6187ef0774 | |||
228d753920 | |||
46daf7941d | |||
aa3219fa5f | |||
31ee2bf5ce | |||
2f19d1ccd8 | |||
96621c9e91 | |||
c58a58a36c | |||
2ff1536f38 | |||
3a1419cdf2 | |||
2117869911 | |||
f3a60cf7ec | |||
719728761a | |||
20cd011cbb | |||
9a4e64a8b3 | |||
015c4bd1e9 | |||
7d345131cc | |||
12755a28c4 | |||
07073d1b39 | |||
a7260073fb | |||
40e20e6376 | |||
abbe39a72a | |||
4286b39a70 | |||
343a7b9e18 | |||
323104b1d1 | |||
b3a2c3594e | |||
96f96f6f66 | |||
52319ab232 | |||
3a4d3d55e5 | |||
43b0187448 | |||
d72a876723 | |||
46a4b33e8c | |||
035664670a | |||
92e698b890 | |||
d9857592d3 | |||
cc8f014f81 | |||
a37508f00c | |||
3713b328ef | |||
00ca8438d4 | |||
6fd2c3ac0b | |||
a45cc734ed | |||
bd513b5135 | |||
4f0d086e36 |
145 changed files with 85616 additions and 1712 deletions
19
README.md
19
README.md
|
@ -19,37 +19,26 @@ Affixed to each repository description is the appropriate link for use in
|
|||
|
||||
#### Backports
|
||||
```
|
||||
https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.18/backports
|
||||
https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.19/backports
|
||||
```
|
||||
|
||||
Aports from the official Alpine repositories backported from edge to v3.18.
|
||||
Aports from the official Alpine repositories backported from edge.
|
||||
|
||||
#### User
|
||||
```
|
||||
https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.18/user
|
||||
https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.19/user
|
||||
```
|
||||
|
||||
Aports that have yet to be (or may never be) upstreamed to the official
|
||||
aports.
|
||||
|
||||
#### Testing/Community
|
||||
```
|
||||
https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.18/community
|
||||
https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.18/testing
|
||||
```
|
||||
|
||||
Aports that have already been upstreamed are kept here for three reasons:
|
||||
* Facilitate keeping track of packages that I support
|
||||
* Upgrades are first deployed here for first batch of testing
|
||||
* Make packages that are in 'testing' available for stable releases
|
||||
|
||||
|
||||
## How to use
|
||||
Add security key of the repo-apk repository to your /etc/apk/keys:
|
||||
|
||||
```shell
|
||||
cd /etc/apk/keys
|
||||
wget https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.18/antoine.martin@protonmail.com-5b3109ad.rsa.pub
|
||||
wget https://lab.ilot.io/ayakael/repo-apk/-/raw/v3.19/antoine.martin@protonmail.com-5b3109ad.rsa.pub
|
||||
```
|
||||
Add repositories that you want to use (see above) to `/etc/apk/repositories`.
|
||||
|
||||
|
|
|
@ -1,58 +0,0 @@
|
|||
# Maintainer: Drew DeVault <sir@cmpwn.com>
|
||||
pkgname=celery
|
||||
pkgver=5.2.7
|
||||
pkgrel=3
|
||||
pkgdesc="An asynchronous task queue/job queue based on distributed message passing"
|
||||
url="http://www.celeryproject.org/"
|
||||
arch="noarch !s390x" # lmited by py3-kombu
|
||||
license="Apache-2.0"
|
||||
depends="
|
||||
py3-billiard
|
||||
py3-click
|
||||
py3-click-didyoumean
|
||||
py3-click-plugins
|
||||
py3-click-repl
|
||||
py3-kombu
|
||||
py3-tz
|
||||
py3-vine
|
||||
python3
|
||||
"
|
||||
makedepends="python3-dev py3-setuptools py3-gpep517 py3-wheel"
|
||||
install="$pkgname.pre-install"
|
||||
source="https://files.pythonhosted.org/packages/source/c/celery/celery-$pkgver.tar.gz
|
||||
celery.confd
|
||||
celery.initd"
|
||||
pkgusers="celery"
|
||||
pkggroups="celery"
|
||||
subpackages="$pkgname-openrc $pkgname-pyc"
|
||||
provides="py3-celery=$pkgver-r$pkgrel"
|
||||
|
||||
# TODO: requires many many many dependencies
|
||||
options="!check"
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
package() {
|
||||
# install scripts
|
||||
install -m755 -D "$srcdir"/$pkgname.initd \
|
||||
"$pkgdir"/etc/init.d/$pkgname
|
||||
install -m644 -D "$srcdir"/$pkgname.confd \
|
||||
"$pkgdir"/etc/conf.d/$pkgname
|
||||
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
dist/*.whl
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 setup.py test
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
68e3bb082f97ebe20391293cc8fa96c41c8f5ac5e8c24b2b7bd66eb104ec459bdfa49741e47486676e5daa88d7a71e3eb0d9432851aeafc74b0d4352e567e853 celery-5.2.7.tar.gz
|
||||
c283956f8fe386ef39cb3e165a20d1cc7ff6398fbf5a922bec6b61fe4a71188519baed9feafc4e0e5b6864851545edaba54b89ba3613b2cf2ddd6426a6bf8fc2 celery.confd
|
||||
3e5e2c6a55672bc0a02fca93ad334c694066c636ed62f2b55cb8f27b9301c429d68ce53667ec744b9b152ec786de7aea90cc05a143d6942cf5d2f34e51ca4089 celery.initd
|
||||
"
|
|
@ -1,4 +0,0 @@
|
|||
CELERY_USER=celery
|
||||
CELERY_LOG=/var/log/celery.log
|
||||
CELERY_REDIR="1>/dev/null 2>> ${CELERY_LOG}"
|
||||
CELERY_OPTS="-A celeryapp $CELERY_REDIR"
|
|
@ -1,16 +0,0 @@
|
|||
#!/sbin/openrc-run
|
||||
supervisor=supervise-daemon
|
||||
|
||||
description="celery queue worker"
|
||||
|
||||
: ${CELERY_USER:="celery"}
|
||||
: ${CELERY_GROUP:="$(id -gn $CELERY_USER)"}
|
||||
|
||||
pidfile="/run/$RC_SVCNAME.sd.pid"
|
||||
supervise_daemon_args="-u $CELERY_USER -g $CELERY_GROUP"
|
||||
command=/usr/bin/celery
|
||||
command_args="${CELERY_OPTS}"
|
||||
|
||||
depends() {
|
||||
use net
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
addgroup -S celery 2>/dev/null
|
||||
adduser -S -D -H -h /usr/share/celery -s /sbin/nologin -G celery -g celery celery 2>/dev/null
|
||||
|
||||
exit 0
|
||||
|
73
backports/cura/APKBUILD
Normal file
73
backports/cura/APKBUILD
Normal file
|
@ -0,0 +1,73 @@
|
|||
# Contributor: Anjandev Momi <anjan@momi.ca>
|
||||
# Maintainer: Anjandev Momi <anjan@momi.ca>
|
||||
pkgname=cura
|
||||
# uranium and curaengine packages must be updated in sync with this verion number
|
||||
# py3-pynest2d and fdm-materials should be checked as well, but their versions are not always in sync
|
||||
pkgver=5.2.2
|
||||
pkgrel=0
|
||||
pkgdesc="3D printer / slicing GUI built on top of the Uranium framework"
|
||||
url="https://ultimaker.com/software/ultimaker-cura"
|
||||
arch="noarch !ppc64le !x86 !armhf !riscv64 !s390x !armv7" # ppc64le: no py3-keyring
|
||||
# x86: no curaengine
|
||||
# armhf: no uranium, qt5-qtquickcontrols, qt5-qtquickcontrols2, qt5-qtgraphicaleffects
|
||||
# riscv64: no uranium
|
||||
# s390x: no py3-trimesh, no py3-numpy-stl
|
||||
# armv7: no py3-trimesh
|
||||
license="LGPL-3.0-or-later"
|
||||
# add cura-binary-data to depends when packaged
|
||||
depends="
|
||||
curaengine
|
||||
fdm-materials
|
||||
uranium
|
||||
py3-arcus
|
||||
py3-keyring
|
||||
py3-numpy-stl
|
||||
py3-pyclipper
|
||||
py3-pynest2d
|
||||
py3-pyserial
|
||||
py3-qt6
|
||||
py3-requests
|
||||
py3-trimesh
|
||||
py3-zeroconf
|
||||
"
|
||||
makedepends="samurai cmake gettext gettext-dev" # needs msginit from gettext
|
||||
checkdepends="py3-pytest"
|
||||
subpackages="$pkgname-lang"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Cura/archive/refs/tags/$pkgver.tar.gz
|
||||
AppDesktopData.patch
|
||||
CuraVersion.patch
|
||||
cmake-helpers.patch
|
||||
cmake.patch"
|
||||
builddir="$srcdir/Cura-$pkgver"
|
||||
options="!check" # tests broken after v5.x
|
||||
|
||||
build() {
|
||||
cmake -B build -G Ninja \
|
||||
-DCURA_VERSION=$pkgver \
|
||||
-DURANIUM_DIR=/usr/share/uranium \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DGETTEXT_MSGINIT_EXECUTABLE=msginit \
|
||||
-DCURA_BINARY_DATA_DIRECTORY=/usr/share/cura \
|
||||
-DCMAKE_BUILD_TYPE=minsizerel
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
mv $pkgdir/usr/bin/cura_app.py $pkgdir/usr/bin/cura
|
||||
|
||||
# don't ever send any user or print info through the internet to Ultimaker
|
||||
rm -rf "$pkgdir/usr/lib/cura/plugins/SliceInfoPlugin"
|
||||
|
||||
install -d "$pkgdir"/usr/share/locale
|
||||
mv "$pkgdir"/usr/share/cura/resources/i18n/* "$pkgdir"/usr/share/locale/
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
5d4e0fdc740d0c048905e2b87cc8c73eedea59b54766b74760505902007b365582d22b46b1cfdcd6914828840865c10a3beb0ef6a1f04ea181c81d44f42434bc cura-5.2.2.tar.gz
|
||||
214e373f6cab7e3ccac12c96d1b5ca636d8d1e9ecdadaae84fc28fb429969c7c2d6055ce2a01b6db3ad85ab6cbc8d135cf2c26c77d7cfe13a73eb81aa5e85f11 AppDesktopData.patch
|
||||
e3bb302db70ca195b2ce9831e71302c8ee2a51955fecc7264a495d7d4fc9c107cfd48811aa5865f16671e7b1ae126f95d3d7bbb6a70f367f7f91a2b32bce377b CuraVersion.patch
|
||||
0db4ff97e7f82ae1a9dbc9c330d08c3e46249feeb3fb630f7c4e2de73749327337ec041680c39a07e0b5034c1b3f3656d75614ab4dc2f39861c8e27bdb2a58ef cmake-helpers.patch
|
||||
05a73f892700ff6279230385b04180873a62b7413fa7f7d55ae150f1bcee57ef05eda0bd7fe444fe660ab66a044c958f42badd33b743fca81033ae8f19dd3805 cmake.patch
|
||||
"
|
58
backports/cura/AppDesktopData.patch
Normal file
58
backports/cura/AppDesktopData.patch
Normal file
|
@ -0,0 +1,58 @@
|
|||
--- /dev/null
|
||||
+++ ./com.ultimaker.cura.appdata.xml
|
||||
@@ -0,0 +1,33 @@
|
||||
+<?xml version="1.0" encoding="UTF-8"?>
|
||||
+<!-- Copyright 2016 Richard Hughes <richard@hughsie.com> -->
|
||||
+<component type="desktop">
|
||||
+ <id>com.ultimaker.cura.desktop</id>
|
||||
+ <metadata_license>CC0-1.0</metadata_license>
|
||||
+ <project_license>LGPL-3.0 and CC-BY-SA-4.0</project_license>
|
||||
+ <name>Cura</name>
|
||||
+ <summary>The world's most advanced 3d printer software</summary>
|
||||
+ <description>
|
||||
+ <p>
|
||||
+ Cura creates a seamless integration between hardware, software and
|
||||
+ materials for the best 3D printing experience around.
|
||||
+ Cura supports the 3MF, OBJ and STL file formats and is available on
|
||||
+ Windows, Mac and Linux.
|
||||
+ </p>
|
||||
+ <ul>
|
||||
+ <li>Novices can start printing right away</li>
|
||||
+ <li>Experts are able to customize 300 settings to achieve the best results</li>
|
||||
+ <li>Optimized profiles for Ultimaker materials</li>
|
||||
+ <li>Supported by a global network of Ultimaker certified service partners</li>
|
||||
+ <li>Print multiple objects at once with different settings for each object</li>
|
||||
+ <li>Cura supports STL, 3MF and OBJ file formats</li>
|
||||
+ <li>Open source and completely free</li>
|
||||
+ </ul>
|
||||
+ </description>
|
||||
+ <screenshots>
|
||||
+ <screenshot type="default">
|
||||
+ <image>https://raw.githubusercontent.com/Ultimaker/Cura/master/screenshot.png</image>
|
||||
+ </screenshot>
|
||||
+ </screenshots>
|
||||
+ <url type="homepage">https://ultimaker.com/software/ultimaker-cura?utm_source=cura&utm_medium=software&utm_campaign=cura-update-linux</url>
|
||||
+ <translation type="gettext">Cura</translation>
|
||||
+</component>
|
||||
--- /dev/null
|
||||
+++ ./com.ultimaker.cura.desktop.in
|
||||
@@ -0,0 +1,19 @@
|
||||
+[Desktop Entry]
|
||||
+Name=Ultimaker Cura
|
||||
+Name[de]=Ultimaker Cura
|
||||
+Name[nl]=Ultimaker Cura
|
||||
+GenericName=3D Printing Software
|
||||
+GenericName[de]=3D-Druck-Software
|
||||
+GenericName[nl]=3D-printsoftware
|
||||
+Comment=Cura converts 3D models into paths for a 3D printer. It prepares your print for maximum accuracy, minimum printing time and good reliability with many extra features that make your print come out great.
|
||||
+Comment[de]=Cura wandelt 3D-Modelle in Pfade für einen 3D-Drucker um. Es bereitet Ihren Druck für maximale Genauigkeit, minimale Druckzeit und guter Zuverlässigkeit mit vielen zusätzlichen Funktionen vor, damit Ihr Druck großartig wird.
|
||||
+Comment[nl]=Cura converteert 3D-modellen naar paden voor een 3D printer. Het bereidt je print voor om zeer precies, snel en betrouwbaar te kunnen printen, met veel extra functionaliteit om je print er goed uit te laten komen.
|
||||
+Exec=@CMAKE_INSTALL_FULL_BINDIR@/cura %F
|
||||
+TryExec=@CMAKE_INSTALL_FULL_BINDIR@/cura
|
||||
+Icon=cura-icon
|
||||
+Terminal=false
|
||||
+Type=Application
|
||||
+MimeType=model/stl;application/vnd.ms-3mfdocument;application/prs.wavefront-obj;image/bmp;image/gif;image/jpeg;image/png;text/x-gcode;application/x-amf;application/x-ply;application/x-ctm;model/vnd.collada+xml;model/gltf-binary;model/gltf+json;model/vnd.collada+xml+zip;
|
||||
+Categories=Graphics;
|
||||
+Keywords=3D;Printing;Slicer;
|
||||
+StartupWMClass=cura.real
|
16
backports/cura/CuraVersion.patch
Normal file
16
backports/cura/CuraVersion.patch
Normal file
|
@ -0,0 +1,16 @@
|
|||
--- /dev/null
|
||||
+++ ./cura/CuraVersion.py.in
|
||||
@@ -0,0 +1,13 @@
|
||||
+# Copyright (c) 2020 Ultimaker B.V.
|
||||
+# Cura is released under the terms of the LGPLv3 or higher.
|
||||
+
|
||||
+CuraAppName = "@CURA_APP_NAME@"
|
||||
+CuraAppDisplayName = "@CURA_APP_DISPLAY_NAME@"
|
||||
+CuraVersion = "@CURA_VERSION@"
|
||||
+CuraBuildType = "@CURA_BUILDTYPE@"
|
||||
+CuraDebugMode = True if "@_cura_debugmode@" == "ON" else False
|
||||
+CuraCloudAPIRoot = "@CURA_CLOUD_API_ROOT@"
|
||||
+CuraCloudAPIVersion = "@CURA_CLOUD_API_VERSION@"
|
||||
+CuraCloudAccountAPIRoot = "@CURA_CLOUD_ACCOUNT_API_ROOT@"
|
||||
+CuraMarketplaceRoot = "@CURA_MARKETPLACE_ROOT@"
|
||||
+CuraDigitalFactoryURL = "@CURA_DIGITAL_FACTORY_URL@"
|
95
backports/cura/cmake-helpers.patch
Normal file
95
backports/cura/cmake-helpers.patch
Normal file
|
@ -0,0 +1,95 @@
|
|||
--- /dev/null
|
||||
+++ ./cmake/CuraPluginInstall.cmake
|
||||
@@ -0,0 +1,92 @@
|
||||
+# Copyright (c) 2022 Ultimaker B.V.
|
||||
+# CuraPluginInstall.cmake is released under the terms of the LGPLv3 or higher.
|
||||
+
|
||||
+#
|
||||
+# This module detects all plugins that need to be installed and adds them using the CMake install() command.
|
||||
+# It detects all plugin folder in the path "plugins/*" where there's a "plugin.json" in it.
|
||||
+#
|
||||
+# Plugins can be configured to NOT BE INSTALLED via the variable "CURA_NO_INSTALL_PLUGINS" as a list of string in the
|
||||
+# form of "a;b;c" or "a,b,c". By default all plugins will be installed.
|
||||
+#
|
||||
+
|
||||
+option(PRINT_PLUGIN_LIST "Should the list of plugins that are installed be printed?" ON)
|
||||
+
|
||||
+# Options or configuration variables
|
||||
+set(CURA_NO_INSTALL_PLUGINS "" CACHE STRING "A list of plugins that should not be installed, separated with ';' or ','.")
|
||||
+
|
||||
+file(GLOB_RECURSE _plugin_json_list ${CMAKE_SOURCE_DIR}/plugins/*/plugin.json)
|
||||
+list(LENGTH _plugin_json_list _plugin_json_list_len)
|
||||
+
|
||||
+# Sort the lists alphabetically so we can handle cases like this:
|
||||
+# - plugins/my_plugin/plugin.json
|
||||
+# - plugins/my_plugin/my_module/plugin.json
|
||||
+# In this case, only "plugins/my_plugin" should be added via install().
|
||||
+set(_no_install_plugin_list ${CURA_NO_INSTALL_PLUGINS})
|
||||
+# Sanitize the string so the comparison will be case-insensitive.
|
||||
+string(STRIP "${_no_install_plugin_list}" _no_install_plugin_list)
|
||||
+string(TOLOWER "${_no_install_plugin_list}" _no_install_plugin_list)
|
||||
+
|
||||
+# WORKAROUND counterpart of what's in cura-build.
|
||||
+string(REPLACE "," ";" _no_install_plugin_list "${_no_install_plugin_list}")
|
||||
+
|
||||
+list(LENGTH _no_install_plugin_list _no_install_plugin_list_len)
|
||||
+
|
||||
+if(_no_install_plugin_list_len GREATER 0)
|
||||
+ list(SORT _no_install_plugin_list)
|
||||
+endif()
|
||||
+if(_plugin_json_list_len GREATER 0)
|
||||
+ list(SORT _plugin_json_list)
|
||||
+endif()
|
||||
+
|
||||
+# Check all plugin directories and add them via install() if needed.
|
||||
+set(_install_plugin_list "")
|
||||
+foreach(_plugin_json_path ${_plugin_json_list})
|
||||
+ get_filename_component(_plugin_dir ${_plugin_json_path} DIRECTORY)
|
||||
+ file(RELATIVE_PATH _rel_plugin_dir ${CMAKE_CURRENT_SOURCE_DIR} ${_plugin_dir})
|
||||
+ get_filename_component(_plugin_dir_name ${_plugin_dir} NAME)
|
||||
+
|
||||
+ # Make plugin name comparison case-insensitive
|
||||
+ string(TOLOWER "${_plugin_dir_name}" _plugin_dir_name_lowercase)
|
||||
+
|
||||
+ # Check if this plugin needs to be skipped for installation
|
||||
+ set(_add_plugin ON) # Indicates if this plugin should be added to the build or not.
|
||||
+ set(_is_no_install_plugin OFF) # If this plugin will not be added, this indicates if it's because the plugin is
|
||||
+ # specified in the NO_INSTALL_PLUGINS list.
|
||||
+ if(_no_install_plugin_list)
|
||||
+ if("${_plugin_dir_name_lowercase}" IN_LIST _no_install_plugin_list)
|
||||
+ set(_add_plugin OFF)
|
||||
+ set(_is_no_install_plugin ON)
|
||||
+ endif()
|
||||
+ endif()
|
||||
+
|
||||
+ # Make sure this is not a subdirectory in a plugin that's already in the install list
|
||||
+ if(_add_plugin)
|
||||
+ foreach(_known_install_plugin_dir ${_install_plugin_list})
|
||||
+ if(_plugin_dir MATCHES "${_known_install_plugin_dir}.+")
|
||||
+ set(_add_plugin OFF)
|
||||
+ break()
|
||||
+ endif()
|
||||
+ endforeach()
|
||||
+ endif()
|
||||
+
|
||||
+ if(_add_plugin)
|
||||
+ if(${PRINT_PLUGIN_LIST})
|
||||
+ message(STATUS "[+] PLUGIN TO INSTALL: ${_rel_plugin_dir}")
|
||||
+ endif()
|
||||
+ get_filename_component(_rel_plugin_parent_dir ${_rel_plugin_dir} DIRECTORY)
|
||||
+ install(DIRECTORY ${_rel_plugin_dir}
|
||||
+ DESTINATION lib${LIB_SUFFIX}/cura/${_rel_plugin_parent_dir}
|
||||
+ PATTERN "__pycache__" EXCLUDE
|
||||
+ PATTERN "*.qmlc" EXCLUDE
|
||||
+ )
|
||||
+ list(APPEND _install_plugin_list ${_plugin_dir})
|
||||
+ elseif(_is_no_install_plugin)
|
||||
+ if(${PRINT_PLUGIN_LIST})
|
||||
+ message(STATUS "[-] PLUGIN TO REMOVE : ${_rel_plugin_dir}")
|
||||
+ endif()
|
||||
+ execute_process(COMMAND ${Python_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/mod_bundled_packages_json.py
|
||||
+ -d ${CMAKE_CURRENT_SOURCE_DIR}/resources/bundled_packages
|
||||
+ ${_plugin_dir_name}
|
||||
+ RESULT_VARIABLE _mod_json_result)
|
||||
+ endif()
|
||||
+endforeach()
|
85
backports/cura/cmake.patch
Normal file
85
backports/cura/cmake.patch
Normal file
|
@ -0,0 +1,85 @@
|
|||
--- ./CMakeLists.txt.orig
|
||||
+++ ./CMakeLists.txt
|
||||
@@ -1,10 +1,6 @@
|
||||
# Copyright (c) 2022 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
-# NOTE: This is only being used for translation scripts.
|
||||
-
|
||||
-# For MSVC flags, will be ignored on non-Windows OS's and this project in general. Only needed for cura-build-environment.
|
||||
-cmake_policy(SET CMP0091 NEW)
|
||||
project(cura)
|
||||
cmake_minimum_required(VERSION 3.18)
|
||||
|
||||
@@ -15,8 +11,44 @@
|
||||
set(URANIUM_DIR "${CMAKE_SOURCE_DIR}/../Uranium" CACHE PATH "The location of the Uranium repository")
|
||||
set(URANIUM_SCRIPTS_DIR "${URANIUM_DIR}/scripts" CACHE PATH "The location of the scripts directory of the Uranium repository")
|
||||
|
||||
+option(CURA_DEBUGMODE "Enable debug dialog and other debug features" OFF)
|
||||
+if(CURA_DEBUGMODE)
|
||||
+ set(_cura_debugmode "ON")
|
||||
+endif()
|
||||
+
|
||||
option(GENERATE_TRANSLATIONS "Should the translations be generated?" ON)
|
||||
|
||||
+set(CURA_APP_NAME "cura" CACHE STRING "Short name of Cura, used for configuration folder")
|
||||
+set(CURA_APP_DISPLAY_NAME "Ultimaker Cura" CACHE STRING "Display name of Cura")
|
||||
+set(CURA_VERSION "master" CACHE STRING "Version name of Cura")
|
||||
+set(CURA_BUILDTYPE "" CACHE STRING "Build type of Cura, eg. 'PPA'")
|
||||
+set(CURA_CLOUD_API_ROOT "" CACHE STRING "Alternative Cura cloud API root")
|
||||
+set(CURA_CLOUD_API_VERSION "" CACHE STRING "Alternative Cura cloud API version")
|
||||
+set(CURA_CLOUD_ACCOUNT_API_ROOT "" CACHE STRING "Alternative Cura cloud account API version")
|
||||
+set(CURA_MARKETPLACE_ROOT "" CACHE STRING "Alternative Marketplace location")
|
||||
+set(CURA_DIGITAL_FACTORY_URL "" CACHE STRING "Alternative Digital Factory location")
|
||||
+
|
||||
+configure_file(${CMAKE_SOURCE_DIR}/com.ultimaker.cura.desktop.in ${CMAKE_BINARY_DIR}/com.ultimaker.cura.desktop @ONLY)
|
||||
+
|
||||
+configure_file(cura/CuraVersion.py.in CuraVersion.py @ONLY)
|
||||
+
|
||||
+if(NOT DEFINED Python_VERSION)
|
||||
+ set(Python_VERSION
|
||||
+ 3.11
|
||||
+ CACHE STRING "Python Version" FORCE)
|
||||
+ message(STATUS "Setting Python version to ${Python_VERSION}. Set Python_VERSION if you want to compile against an other version.")
|
||||
+endif()
|
||||
+if(APPLE)
|
||||
+ set(Python_FIND_FRAMEWORK NEVER)
|
||||
+endif()
|
||||
+find_package(Python ${Python_VERSION} EXACT REQUIRED COMPONENTS Interpreter)
|
||||
+message(STATUS "Linking and building ${project_name} against Python ${Python_VERSION}")
|
||||
+if(NOT DEFINED Python_SITELIB_LOCAL)
|
||||
+ set(Python_SITELIB_LOCAL
|
||||
+ "${Python_SITELIB}"
|
||||
+ CACHE PATH "Local alternative site-package location to install Cura" FORCE)
|
||||
+endif()
|
||||
+
|
||||
if(NOT ${URANIUM_DIR} STREQUAL "")
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${URANIUM_DIR}/cmake")
|
||||
endif()
|
||||
@@ -29,4 +61,24 @@
|
||||
if(${GENERATE_TRANSLATIONS})
|
||||
CREATE_TRANSLATION_TARGETS()
|
||||
endif()
|
||||
-endif()
|
||||
\ No newline at end of file
|
||||
+endif()
|
||||
+
|
||||
+install(DIRECTORY resources DESTINATION ${CMAKE_INSTALL_DATADIR}/cura)
|
||||
+
|
||||
+include(CuraPluginInstall)
|
||||
+
|
||||
+install(FILES cura_app.py DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
+ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
+install(DIRECTORY cura DESTINATION "${Python_SITELIB_LOCAL}")
|
||||
+install(FILES ${CMAKE_BINARY_DIR}/CuraVersion.py DESTINATION "${Python_SITELIB_LOCAL}/cura/")
|
||||
+if(NOT APPLE AND NOT WIN32)
|
||||
+ install(FILES ${CMAKE_BINARY_DIR}/com.ultimaker.cura.desktop
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
|
||||
+ install(FILES ${CMAKE_SOURCE_DIR}/resources/images/cura-icon.png
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/128x128/apps/)
|
||||
+ install(FILES com.ultimaker.cura.appdata.xml
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)
|
||||
+ install(FILES cura.sharedmimeinfo
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages/
|
||||
+ RENAME cura.xml )
|
||||
+endif()
|
27
backports/fdm-materials/APKBUILD
Normal file
27
backports/fdm-materials/APKBUILD
Normal file
|
@ -0,0 +1,27 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=fdm-materials
|
||||
pkgver=5.2.2
|
||||
pkgrel=0
|
||||
pkgdesc="FDM Material Database"
|
||||
url="https://github.com/Ultimaker/fdm_materials"
|
||||
arch="noarch"
|
||||
license="CC0-1.0"
|
||||
makedepends="cmake samurai"
|
||||
options="!check" # no checks provided
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/fdm_materials/archive/refs/tags/$pkgver.tar.gz"
|
||||
builddir="$srcdir/fdm_materials-$pkgver"
|
||||
|
||||
build() {
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
73eefec8b7b88af73afc578ffba583480bda30309945b1720d7a1a075bd7ab3279599d53fe83f4c96695f294a5a3e11297abc334ca6cc9db163d4eb0fbdaf0f9 fdm-materials-5.2.2.tar.gz
|
||||
"
|
40
backports/libnest2d/APKBUILD
Normal file
40
backports/libnest2d/APKBUILD
Normal file
|
@ -0,0 +1,40 @@
|
|||
# Contributor: Anjandev Momi <anjan@momi.ca>
|
||||
# Maintainer: Anjandev Momi <anjan@momi.ca>
|
||||
pkgname=libnest2d
|
||||
pkgver=0.4
|
||||
pkgrel=5
|
||||
pkgdesc="2D irregular bin packaging and nesting library written in modern C++"
|
||||
url="https://github.com/tamasmeszaros/libnest2d"
|
||||
arch="noarch"
|
||||
license="LGPL-3.0-only"
|
||||
makedepends="samurai cmake clipper-dev boost-dev nlopt-dev"
|
||||
subpackages="$pkgname-dev"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/tamasmeszaros/libnest2d/archive/refs/tags/$pkgver.tar.gz
|
||||
allow-disallowed-area.patch"
|
||||
|
||||
build() {
|
||||
if [ "$CBUILD" != "$CHOST" ]; then
|
||||
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
|
||||
fi
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DBUILD_SHARED_LIBS=True \
|
||||
-DCMAKE_BUILD_TYPE=minsizerel \
|
||||
$CMAKE_CROSSOPTS .
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd build
|
||||
CTEST_OUTPUT_ON_FAILURE=TRUE ctest
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
fadce18986b844eed13a581f84055df909a17407a0980deb6c7c24248a969a537a8840650bcfc673e61973810ce9a008acb599e3b8e00c9bff6b566ca41cd62c libnest2d-0.4.tar.gz
|
||||
2e8cd3343c72c576ecb54960d7ad9f4f2322f822b19ac41850b3b28da95e97c2cefe7c67de6c97627df08cd5cdc1660ce4dfa95fe51f88e0ff5c066c8d785458 allow-disallowed-area.patch
|
||||
"
|
124
backports/libnest2d/allow-disallowed-area.patch
Normal file
124
backports/libnest2d/allow-disallowed-area.patch
Normal file
|
@ -0,0 +1,124 @@
|
|||
From 2e91be2679b5efa0773292d9d0a2ae72255bb271 Mon Sep 17 00:00:00 2001
|
||||
From: Ghostkeeper <rubend@tutanota.com>
|
||||
Date: Tue, 6 Oct 2020 16:13:15 +0200
|
||||
Subject: [PATCH 1/3] Allow for an item to be a disallowed area
|
||||
|
||||
url: https://github.com/tamasmeszaros/libnest2d/pull/18
|
||||
|
||||
Disallowed areas have slightly different behaviour from fixed items: Other items won't get packed closely around them. Implementation of that pending.
|
||||
|
||||
Contributes to issue CURA-7754.
|
||||
---
|
||||
include/libnest2d/nester.hpp | 16 ++++++++++++++++
|
||||
1 file changed, 16 insertions(+)
|
||||
|
||||
diff --git a/include/libnest2d/nester.hpp b/include/libnest2d/nester.hpp
|
||||
index 2f207d5..932a060 100644
|
||||
--- a/include/libnest2d/nester.hpp
|
||||
+++ b/include/libnest2d/nester.hpp
|
||||
@@ -71,6 +71,15 @@ class _Item {
|
||||
int binid_{BIN_ID_UNSET}, priority_{0};
|
||||
bool fixed_{false};
|
||||
|
||||
+ /**
|
||||
+ * \brief If this is a fixed area, indicates whether it is a disallowed area
|
||||
+ * or a previously placed item.
|
||||
+ *
|
||||
+ * If this is a disallowed area, other objects will not get packed close
|
||||
+ * together with this item. It only blocks other items in its area.
|
||||
+ */
|
||||
+ bool disallowed_{false};
|
||||
+
|
||||
public:
|
||||
|
||||
/// The type of the shape which was handed over as the template argument.
|
||||
@@ -129,11 +138,18 @@ class _Item {
|
||||
sh_(sl::create<RawShape>(std::move(contour), std::move(holes))) {}
|
||||
|
||||
inline bool isFixed() const noexcept { return fixed_; }
|
||||
+ inline bool isDisallowedArea() const noexcept { return disallowed_; }
|
||||
inline void markAsFixedInBin(int binid)
|
||||
{
|
||||
fixed_ = binid >= 0;
|
||||
binid_ = binid;
|
||||
}
|
||||
+ inline void markAsDisallowedAreaInBin(int binid)
|
||||
+ {
|
||||
+ fixed_ = binid >= 0;
|
||||
+ binid_ = binid;
|
||||
+ disallowed_ = true;
|
||||
+ }
|
||||
|
||||
inline void binId(int idx) { binid_ = idx; }
|
||||
inline int binId() const noexcept { return binid_; }
|
||||
|
||||
From ff61049e59d3151462bca7ff2e2268c2b32731e7 Mon Sep 17 00:00:00 2001
|
||||
From: Ghostkeeper <rubend@tutanota.com>
|
||||
Date: Tue, 6 Oct 2020 16:14:36 +0200
|
||||
Subject: [PATCH 2/3] Allow unsetting of being a disallowed area
|
||||
|
||||
If you set the bin to -1 or set the item to be a simple fixed item afterwards, it'll no longer be a disallowed area.
|
||||
|
||||
Contributes to issue CURA-7754.
|
||||
---
|
||||
include/libnest2d/nester.hpp | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/libnest2d/nester.hpp b/include/libnest2d/nester.hpp
|
||||
index 932a060..54761a6 100644
|
||||
--- a/include/libnest2d/nester.hpp
|
||||
+++ b/include/libnest2d/nester.hpp
|
||||
@@ -143,12 +143,13 @@ class _Item {
|
||||
{
|
||||
fixed_ = binid >= 0;
|
||||
binid_ = binid;
|
||||
+ disallowed_ = false;
|
||||
}
|
||||
inline void markAsDisallowedAreaInBin(int binid)
|
||||
{
|
||||
fixed_ = binid >= 0;
|
||||
binid_ = binid;
|
||||
- disallowed_ = true;
|
||||
+ disallowed_ = fixed_;
|
||||
}
|
||||
|
||||
inline void binId(int idx) { binid_ = idx; }
|
||||
|
||||
From 31391fd173249ad9b906390058e13b09238fadc8 Mon Sep 17 00:00:00 2001
|
||||
From: Ghostkeeper <rubend@tutanota.com>
|
||||
Date: Thu, 8 Oct 2020 11:06:58 +0200
|
||||
Subject: [PATCH 3/3] Align items to their starting position if all placed
|
||||
items are disallowed
|
||||
|
||||
We shouldn't align items to disallowed areas. So place them in the starting position according to the alignment property.
|
||||
|
||||
Lot of work to investigate. But very little code changes!
|
||||
|
||||
Contributes to issue CURA-7754.
|
||||
---
|
||||
include/libnest2d/placers/nfpplacer.hpp | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/include/libnest2d/placers/nfpplacer.hpp b/include/libnest2d/placers/nfpplacer.hpp
|
||||
index 96a8cff..b0ebb15 100644
|
||||
--- a/include/libnest2d/placers/nfpplacer.hpp
|
||||
+++ b/include/libnest2d/placers/nfpplacer.hpp
|
||||
@@ -101,7 +101,7 @@ struct NfpPConfig {
|
||||
* alignment with the candidate item or do anything else.
|
||||
*
|
||||
* \param remaining A container with the remaining items waiting to be
|
||||
- * placed. You can use some features about the remaining items to alter to
|
||||
+ * placed. You can use some features about the remaining items to alter the
|
||||
* score of the current placement. If you know that you have to leave place
|
||||
* for other items as well, that might influence your decision about where
|
||||
* the current candidate should be placed. E.g. imagine three big circles
|
||||
@@ -735,7 +735,8 @@ class _NofitPolyPlacer: public PlacerBoilerplate<_NofitPolyPlacer<RawShape, TBin
|
||||
remlist.insert(remlist.end(), remaining.from, remaining.to);
|
||||
}
|
||||
|
||||
- if(items_.empty()) {
|
||||
+ if(std::all_of(items_.begin(), items_.end(),
|
||||
+ [](const Item& item) { return item.isDisallowedArea(); })) {
|
||||
setInitialPosition(item);
|
||||
best_overfit = overfit(item.transformedShape(), bin_);
|
||||
can_pack = best_overfit <= 0;
|
33
backports/libspatialindex/APKBUILD
Normal file
33
backports/libspatialindex/APKBUILD
Normal file
|
@ -0,0 +1,33 @@
|
|||
# Contributor: Alex Yam <alex@alexyam.com>
|
||||
# Maintainer: Alex Yam <alex@alexyam.com>
|
||||
pkgname=libspatialindex
|
||||
pkgver=0_git20210205
|
||||
_commit=8ee223632f95c81f49f5eb2d547ad973475c4601
|
||||
pkgrel=1
|
||||
pkgdesc="extensible framework for robust spatial indexing methods"
|
||||
url="https://libspatialindex.org/"
|
||||
arch="all"
|
||||
license="MIT"
|
||||
makedepends="cmake"
|
||||
subpackages="$pkgname-dev"
|
||||
source="$pkgname-$_commit.tar.gz::https://github.com/libspatialindex/libspatialindex/archive/$_commit.tar.gz"
|
||||
builddir="$srcdir/$pkgname-$_commit"
|
||||
|
||||
build() {
|
||||
cmake -B build \
|
||||
-DCMAKE_BUILD_TYPE=MinSizeRel \
|
||||
-DCMAKE_PREFIX_PATH=/usr \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DBUILD_TESTING=ON
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd build && ctest
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --build build --target install
|
||||
}
|
||||
|
||||
sha512sums="caf91aac77b75445e4fc4d0baedcd10c619b2097dfd841b00339d9ddd4b73db05b99de1d84be88f1083f4713a936cf110d5851523491f5a74c6f96e1d5795dbb libspatialindex-8ee223632f95c81f49f5eb2d547ad973475c4601.tar.gz"
|
38
backports/nlopt/APKBUILD
Normal file
38
backports/nlopt/APKBUILD
Normal file
|
@ -0,0 +1,38 @@
|
|||
# Contributor: Anjandev Momi <anjan@momi.ca>
|
||||
# Maintainer: Anjandev Momi <anjan@momi.ca>
|
||||
pkgname=nlopt
|
||||
pkgver=2.7.1
|
||||
pkgrel=0
|
||||
pkgdesc="library for nonlinear optimization, wrapping many algorithms for global and local, constrained or unconstrained, optimization"
|
||||
url="https://github.com/stevengj/nlopt/"
|
||||
arch="all"
|
||||
license="LGPL-2.1-or-later"
|
||||
makedepends="samurai cmake"
|
||||
subpackages="$pkgname-dev $pkgname-doc"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/stevengj/nlopt/archive/refs/tags/v$pkgver.tar.gz"
|
||||
|
||||
build() {
|
||||
if [ "$CBUILD" != "$CHOST" ]; then
|
||||
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
|
||||
fi
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DBUILD_SHARED_LIBS=True \
|
||||
-DCMAKE_BUILD_TYPE=minsizerel \
|
||||
$CMAKE_CROSSOPTS .
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd build
|
||||
CTEST_OUTPUT_ON_FAILURE=TRUE ctest
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
e23cb522fc696010574c14b72be85acc0f8ccf0bf208bf2b8789c57d6c5a6e6d419ee10330581518b1c1567018ae909b626ce7761d4fbd5bf112916871e420e2 nlopt-2.7.1.tar.gz
|
||||
"
|
|
@ -1,29 +0,0 @@
|
|||
# Contributor: Sam Whited <sam@samwhited.com>
|
||||
# Maintainer: Sam Whited <sam@samwhited.com>
|
||||
pkgname=py3-aiodns
|
||||
_pkgname=aiodns
|
||||
pkgver=3.0.0
|
||||
pkgrel=2
|
||||
pkgdesc="A library for performing asynchronous DNS resolutions using pycares."
|
||||
url="https://pypi.org/project/aiosasl/"
|
||||
arch="all"
|
||||
license="MIT"
|
||||
depends="python3 py3-pycares"
|
||||
makedepends="py3-setuptools"
|
||||
subpackages="$pkgname-doc $pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
|
||||
builddir="$srcdir/$_pkgname-$pkgver"
|
||||
options="!check" # tests not included in source package.
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
install -Dm644 LICENSE README.rst -t "$pkgdir"/usr/share/licenses/$pkgname
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
8c1016f3b0cb461e70e9a55034f9ad3b3db705a845bf20bb6503c7a5d592b4c5d2e8ddc60b375c5fafdc559dc4566736f4c93f26710be2dcbd181284ef039825 aiodns-3.0.0.tar.gz
|
||||
"
|
|
@ -1,37 +0,0 @@
|
|||
# Maintainer: Drew DeVault <sir@cmpwn.com>
|
||||
pkgname=py3-amqp
|
||||
pkgver=5.1.1
|
||||
pkgrel=2
|
||||
pkgdesc="an AMQP implementation"
|
||||
url="https://pypi.org/project/amqp/"
|
||||
arch="noarch"
|
||||
license="BSD-3-Clause"
|
||||
depends="py3-vine python3"
|
||||
makedepends="py3-setuptools py3-gpep517 py3-wheel"
|
||||
checkdepends="py3-vine py3-case py3-nose py2py3-mock"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/a/amqp/amqp-$pkgver.tar.gz"
|
||||
options="!check" # requires a running rabbitmq sever
|
||||
builddir="$srcdir"/amqp-$pkgver
|
||||
|
||||
replaces="py-amqp" # Backwards compatibility
|
||||
provides="py-amqp=$pkgver-r$pkgrel" # Backwards compatibility
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 setup.py test
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f549a85e4f04543dd8e844edb68350ca185de9259aa896af31ae5ee5dfdfe73f904d95821c403dc797c7f3ada17ce6bff4e0fd9fcdf2abc1b33a94d079f99179 amqp-5.1.1.tar.gz
|
||||
"
|
42
backports/py3-arcus/APKBUILD
Normal file
42
backports/py3-arcus/APKBUILD
Normal file
|
@ -0,0 +1,42 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=py3-arcus
|
||||
# Needs to be upgraded in sync with libarcus
|
||||
pkgver=5.2.2
|
||||
pkgrel=3
|
||||
pkgdesc="Python bindings for libarcus"
|
||||
url="https://github.com/Ultimaker/pyArcus"
|
||||
arch="all"
|
||||
license="LGPL-3.0-only"
|
||||
makedepends="
|
||||
cmake
|
||||
libarcus-dev
|
||||
protobuf-dev
|
||||
py3-sip
|
||||
python3-dev
|
||||
samurai
|
||||
"
|
||||
options="!check" # package doesn't provide any tests
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/pyArcus/archive/refs/tags/$pkgver.tar.gz
|
||||
cmake.patch
|
||||
cmake-helpers.patch
|
||||
pyproject.patch"
|
||||
builddir="$srcdir/pyArcus-$pkgver"
|
||||
|
||||
build() {
|
||||
cmake -G Ninja -B build \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
b24cbb9a5d7aa917b1b21e46f935b1293645e731d4e475a5abe364237f35708e8e96a1c6f06fe78e2e0e381737f4a27a6db87e42a5f4de9d48091d9de096f9b0 py3-arcus-5.2.2.tar.gz
|
||||
f14e55cd31c13051981f26364e34da8c94e8eb5227b1cfd6fe44b9f97b5a4dcf6142a1751fa62eb0514a47583e6ec2d51dc253f23cf72c3fe6a1cb5dca136f21 cmake.patch
|
||||
de75b985607feae0a9c511742915814e9c3d4bc467183f010ccc334ce4d0d952b6ff86020360b78558c4738cc03cf62c386b44ed76bcec12075c4a93dd03eeb7 cmake-helpers.patch
|
||||
ef593230d5c78da8ba0fc6ea83225c4543857de1837d3151c45e59ffd7c98063b8f97f25d01c15b6a8f90c26c919206f9f7fa26c9650117f4ce7be49ebca876f pyproject.patch
|
||||
"
|
254
backports/py3-arcus/cmake-helpers.patch
Normal file
254
backports/py3-arcus/cmake-helpers.patch
Normal file
|
@ -0,0 +1,254 @@
|
|||
--- /dev/null
|
||||
+++ ./cmake/CMakeBuilder.py
|
||||
@@ -0,0 +1,13 @@
|
||||
+from sipbuild import SetuptoolsBuilder
|
||||
+
|
||||
+
|
||||
+class CMakeBuilder(SetuptoolsBuilder):
|
||||
+ def __init__(self, project, **kwargs):
|
||||
+ print("Using the CMake builder")
|
||||
+ super().__init__(project, **kwargs)
|
||||
+
|
||||
+ def build(self):
|
||||
+ """ Only Generate the source files """
|
||||
+ print("Generating the source files")
|
||||
+ self._generate_bindings()
|
||||
+ self._generate_scripts()
|
||||
--- /dev/null
|
||||
+++ ./cmake/FindSIP.cmake
|
||||
@@ -0,0 +1,65 @@
|
||||
+# Find SIP
|
||||
+# ~~~~~~~~
|
||||
+#
|
||||
+# SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
|
||||
+#
|
||||
+# Find the installed version of SIP. FindSIP should be called after Python
|
||||
+# has been found.
|
||||
+#
|
||||
+# This file defines the following variables:
|
||||
+#
|
||||
+# SIP_VERSION - The version of SIP found expressed as a 6 digit hex number
|
||||
+# suitable for comparison as a string.
|
||||
+#
|
||||
+# SIP_VERSION_STR - The version of SIP found as a human readable string.
|
||||
+#
|
||||
+# SIP_BINARY_PATH - Path and filename of the SIP command line executable.
|
||||
+#
|
||||
+# SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
|
||||
+#
|
||||
+# SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed
|
||||
+# into.
|
||||
+
|
||||
+# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
|
||||
+# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
+
|
||||
+
|
||||
+
|
||||
+IF(SIP_VERSION OR SIP_BUILD_EXECUTABLE)
|
||||
+ # Already in cache, be silent
|
||||
+ SET(SIP_FOUND TRUE)
|
||||
+ELSE()
|
||||
+
|
||||
+ FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH} NO_CMAKE_FIND_ROOT_PATH)
|
||||
+
|
||||
+ EXECUTE_PROCESS(COMMAND ${Python_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config)
|
||||
+ IF(sip_config)
|
||||
+ STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_version_num:([^\n]+).*$" "\\1" SIP_VERSION_NUM ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
|
||||
+ IF(${SIP_VERSION_STR} VERSION_LESS 5)
|
||||
+ STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_BINARY_PATH ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_module_dir:([^\n]+).*$" "\\1" SIP_MODULE_DIR ${sip_config})
|
||||
+ ELSE(${SIP_VERSION_STR} VERSION_LESS 5)
|
||||
+ FIND_PROGRAM(SIP_BUILD_EXECUTABLE sip-build)
|
||||
+ ENDIF(${SIP_VERSION_STR} VERSION_LESS 5)
|
||||
+ SET(SIP_FOUND TRUE)
|
||||
+ ENDIF(sip_config)
|
||||
+
|
||||
+ IF(SIP_FOUND)
|
||||
+ IF(NOT SIP_FIND_QUIETLY)
|
||||
+ MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}")
|
||||
+ ENDIF(NOT SIP_FIND_QUIETLY)
|
||||
+ ELSE(SIP_FOUND)
|
||||
+ IF(SIP_FIND_REQUIRED)
|
||||
+ MESSAGE(FATAL_ERROR "Could not find SIP")
|
||||
+ ENDIF(SIP_FIND_REQUIRED)
|
||||
+ ENDIF(SIP_FOUND)
|
||||
+
|
||||
+ENDIF()
|
||||
+
|
||||
+include(${CMAKE_SOURCE_DIR}/cmake/SIPMacros.cmake)
|
||||
+ADD_DEFINITIONS(-DSIP_VERSION=0x${SIP_VERSION})
|
||||
--- /dev/null
|
||||
+++ ./cmake/FindSIP.py
|
||||
@@ -0,0 +1,57 @@
|
||||
+# -*- coding: utf-8 -*-
|
||||
+#
|
||||
+# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
|
||||
+# All rights reserved.
|
||||
+#
|
||||
+# Redistribution and use in source and binary forms, with or without
|
||||
+# modification, are permitted provided that the following conditions are met:
|
||||
+# * Redistributions of source code must retain the above copyright
|
||||
+# notice, this list of conditions and the following disclaimer.
|
||||
+# * Redistributions in binary form must reproduce the above copyright
|
||||
+# notice, this list of conditions and the following disclaimer in the
|
||||
+# documentation and/or other materials provided with the distribution.
|
||||
+# * Neither the name of the Simon Edwards <simon@simonzone.com> nor the
|
||||
+# names of its contributors may be used to endorse or promote products
|
||||
+# derived from this software without specific prior written permission.
|
||||
+#
|
||||
+# THIS SOFTWARE IS PROVIDED BY Simon Edwards <simon@simonzone.com> ''AS IS'' AND ANY
|
||||
+# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
+# DISCLAIMED. IN NO EVENT SHALL Simon Edwards <simon@simonzone.com> BE LIABLE FOR ANY
|
||||
+# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
+# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+#
|
||||
+# FindSIP.py
|
||||
+# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
|
||||
+# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
+
|
||||
+try:
|
||||
+ import sipbuild
|
||||
+
|
||||
+ print("sip_version:%06.0x" % sipbuild.version.SIP_VERSION)
|
||||
+ print("sip_version_num:%d" % sipbuild.version.SIP_VERSION)
|
||||
+ print("sip_version_str:%s" % sipbuild.version.SIP_VERSION_STR)
|
||||
+
|
||||
+ from distutils.sysconfig import get_python_lib
|
||||
+ python_modules_dir = get_python_lib(plat_specific=1)
|
||||
+ print("default_sip_dir:%s" % python_modules_dir)
|
||||
+except ImportError: # Code for SIP v4
|
||||
+ import sipconfig
|
||||
+
|
||||
+ sipcfg = sipconfig.Configuration()
|
||||
+ print("sip_version:%06.0x" % sipcfg.sip_version)
|
||||
+ print("sip_version_num:%d" % sipcfg.sip_version)
|
||||
+ print("sip_version_str:%s" % sipcfg.sip_version_str)
|
||||
+ print("sip_bin:%s" % sipcfg.sip_bin)
|
||||
+ print("default_sip_dir:%s" % sipcfg.default_sip_dir)
|
||||
+ print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
|
||||
+ # SIP 4.19.10+ has new sipcfg.sip_module_dir
|
||||
+ if hasattr(sipcfg, "sip_module_dir"):
|
||||
+ print("sip_module_dir:%s" % sipcfg.sip_module_dir)
|
||||
+ else:
|
||||
+ print("sip_module_dir:%s" % sipcfg.sip_mod_dir)
|
||||
--- /dev/null
|
||||
+++ ./cmake/SIPMacros.cmake
|
||||
@@ -0,0 +1,107 @@
|
||||
+
|
||||
+
|
||||
+# Macros for SIP
|
||||
+# ~~~~~~~~~~~~~~
|
||||
+
|
||||
+set(SIP_ARGS --pep484-pyi --no-protected-is-public)
|
||||
+
|
||||
+function(add_sip_module MODULE_TARGET)
|
||||
+ if(NOT SIP_BUILD_EXECUTABLE)
|
||||
+ set(SIP_BUILD_EXECUTABLE ${CMAKE_PREFIX_PATH}/Scripts/sip-build)
|
||||
+ endif()
|
||||
+
|
||||
+ message(STATUS "SIP: Generating pyproject.toml")
|
||||
+ configure_file(${CMAKE_SOURCE_DIR}/pyproject.toml.in ${CMAKE_CURRENT_BINARY_DIR}/pyproject.toml)
|
||||
+ configure_file(${CMAKE_SOURCE_DIR}/cmake/CMakeBuilder.py ${CMAKE_CURRENT_BINARY_DIR}/CMakeBuilder.py)
|
||||
+ if(WIN32)
|
||||
+ set(ext .pyd)
|
||||
+ set(env_path_sep ";")
|
||||
+ else()
|
||||
+ set(ext .so)
|
||||
+ set(env_path_sep ":")
|
||||
+ endif()
|
||||
+
|
||||
+ message(STATUS "SIP: Generating source files")
|
||||
+ execute_process(
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
|
||||
+ COMMAND_ECHO STDOUT
|
||||
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
|
||||
+ )
|
||||
+ # This will generate the source-files during the configuration step in CMake. Needed to obtain the sources
|
||||
+
|
||||
+ # Touch the generated files (8 in total) to make them dirty and force them to rebuild
|
||||
+ message(STATUS "SIP: Touching the source files")
|
||||
+ set(_sip_output_files)
|
||||
+ list(LENGTH SIP_FILES _no_outputfiles)
|
||||
+ foreach(_concat_file_nr RANGE 0 ${_no_outputfiles})
|
||||
+ if(${_concat_file_nr} LESS 8)
|
||||
+ list(APPEND _sip_output_files "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/sip${MODULE_TARGET}part${_concat_file_nr}.cpp")
|
||||
+ endif()
|
||||
+ endforeach()
|
||||
+
|
||||
+ # Find the generated source files
|
||||
+ message(STATUS "SIP: Collecting the generated source files")
|
||||
+ file(GLOB sip_c "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.c")
|
||||
+ file(GLOB sip_cpp "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.cpp")
|
||||
+ file(GLOB sip_hdr "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.h")
|
||||
+
|
||||
+ # Add the user specified source files
|
||||
+ message(STATUS "SIP: Collecting the user specified source files")
|
||||
+ get_target_property(usr_src ${MODULE_TARGET} SOURCES)
|
||||
+
|
||||
+ # create the target library and link all the files (generated and user specified
|
||||
+ message(STATUS "SIP: Linking the interface target against the shared library")
|
||||
+ set(sip_sources "${sip_c}" "${sip_cpp}" "${usr_src}")
|
||||
+
|
||||
+ if (BUILD_SHARED_LIBS)
|
||||
+ add_library("sip_${MODULE_TARGET}" SHARED ${sip_sources})
|
||||
+ else()
|
||||
+ add_library("sip_${MODULE_TARGET}" STATIC ${sip_sources})
|
||||
+ endif()
|
||||
+
|
||||
+ # Make sure that the library name of the target is the same as the MODULE_TARGET with the appropriate extension
|
||||
+ target_link_libraries("sip_${MODULE_TARGET}" PRIVATE "${MODULE_TARGET}")
|
||||
+ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES PREFIX "")
|
||||
+ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES SUFFIX ${ext})
|
||||
+ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES OUTPUT_NAME "${MODULE_TARGET}")
|
||||
+
|
||||
+ # Add the custom command to (re-)generate the files and mark them as dirty. This allows the user to actually work
|
||||
+ # on the sip definition files without having to reconfigure the complete project.
|
||||
+ if (NOT DEFINED PYTHONPATH)
|
||||
+ set(PYTHONPATH "")
|
||||
+ endif ()
|
||||
+ add_custom_command(
|
||||
+ TARGET "sip_${MODULE_TARGET}"
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
|
||||
+ COMMAND ${CMAKE_COMMAND} -E touch ${_sip_output_files}
|
||||
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
|
||||
+ MAIN_DEPENDENCY ${MODULE_SIP}
|
||||
+ DEPENDS ${sip_sources}
|
||||
+ VERBATIM
|
||||
+ )
|
||||
+
|
||||
+ set_target_properties("sip_${MODULE_TARGET}"
|
||||
+ PROPERTIES
|
||||
+ RESOURCE "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/${MODULE_TARGET}.pyi")
|
||||
+endfunction()
|
||||
+
|
||||
+function(install_sip_module MODULE_TARGET)
|
||||
+ if(DEFINED ARGV1)
|
||||
+ set(_install_path ${ARGV1})
|
||||
+ else()
|
||||
+ if(DEFINED Python_SITEARCH)
|
||||
+ set(_install_path ${Python_SITEARCH})
|
||||
+ elseif(DEFINED Python_SITELIB)
|
||||
+ set(_install_path ${Python_SITELIB})
|
||||
+ else()
|
||||
+ message(FATAL_ERROR "SIP: Specify the site-packages location")
|
||||
+ endif()
|
||||
+ endif()
|
||||
+ message(STATUS "SIP: Installing Python module and PEP 484 file in ${_install_path}")
|
||||
+ install(TARGETS "sip_${MODULE_TARGET}"
|
||||
+ ARCHIVE DESTINATION ${_install_path}
|
||||
+ LIBRARY DESTINATION ${_install_path}
|
||||
+ RUNTIME DESTINATION ${_install_path}
|
||||
+ RESOURCE DESTINATION ${_install_path}
|
||||
+ )
|
||||
+endfunction()
|
32
backports/py3-arcus/cmake.patch
Normal file
32
backports/py3-arcus/cmake.patch
Normal file
|
@ -0,0 +1,32 @@
|
|||
--- ./CMakeLists.txt.orig
|
||||
+++ ./CMakeLists.txt
|
||||
@@ -2,22 +2,22 @@
|
||||
project(pyarcus)
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
-find_package(protobuf REQUIRED)
|
||||
-find_package(cpython REQUIRED)
|
||||
-find_package(arcus REQUIRED)
|
||||
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
|
||||
|
||||
-find_package(standardprojectsettings REQUIRED)
|
||||
-find_package(sipbuildtool REQUIRED)
|
||||
+find_package(Protobuf REQUIRED)
|
||||
+find_package(Python REQUIRED COMPONENTS Interpreter Development)
|
||||
+find_package(Arcus REQUIRED)
|
||||
|
||||
+find_package(SIP 6.5.0 REQUIRED)
|
||||
+
|
||||
add_library(pyArcus INTERFACE src/PythonMessage.cpp)
|
||||
-use_threads(pyArcus)
|
||||
|
||||
target_include_directories(pyArcus
|
||||
INTERFACE
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/>
|
||||
)
|
||||
-target_link_libraries(pyArcus INTERFACE arcus::arcus protobuf::libprotobuf cpython::cpython)
|
||||
+target_link_libraries(pyArcus INTERFACE Arcus protobuf::libprotobuf Python::Python)
|
||||
add_sip_module(pyArcus)
|
||||
install_sip_module(pyArcus)
|
||||
|
20
backports/py3-arcus/pyproject.patch
Normal file
20
backports/py3-arcus/pyproject.patch
Normal file
|
@ -0,0 +1,20 @@
|
|||
--- /dev/null
|
||||
+++ ./pyproject.toml.in
|
||||
@@ -0,0 +1,17 @@
|
||||
+[build-system]
|
||||
+requires = ["sip >=6, <7"]
|
||||
+build-backend = "sipbuild.api"
|
||||
+
|
||||
+[tool.sip.metadata]
|
||||
+name = "pyArcus"
|
||||
+
|
||||
+[tool.sip.project]
|
||||
+builder-factory = "CMakeBuilder"
|
||||
+sip-files-dir = "${CMAKE_CURRENT_SOURCE_DIR}/python/"
|
||||
+sip-include-dirs = ["CMAKE_CURRENT_SOURCE_DIR/python/"]
|
||||
+build-dir = "${CMAKE_CURRENT_BINARY_DIR}/pyArcus/"
|
||||
+
|
||||
+[tool.sip.bindings.pyArcus]
|
||||
+exceptions = true
|
||||
+release-gil = true
|
||||
+concatenate = 8
|
|
@ -1,42 +0,0 @@
|
|||
# Maintainer: Drew DeVault <sir@cmpwn.com>
|
||||
pkgname=py3-billiard
|
||||
pkgver=3.6.4.0
|
||||
pkgrel=4
|
||||
pkgdesc="a message queue abstraction layer"
|
||||
url="https://pypi.org/project/billiard/"
|
||||
arch="noarch"
|
||||
license="BSD-3-Clause"
|
||||
makedepends="py3-setuptools"
|
||||
checkdepends="py3-psutil py3-pytest py3-nose py3-case"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/b/billiard/billiard-$pkgver.tar.gz
|
||||
$pkgname-py311.patch::https://github.com/celery/billiard/commit/ff8efc5d689ef048f5203593390f1ff6a052a5d5.patch
|
||||
"
|
||||
builddir="$srcdir/billiard-$pkgver"
|
||||
|
||||
replaces="py-billiard" # Backwards compatibility
|
||||
provides="py-billiard=$pkgver-r$pkgrel" # Backwards compatibility
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
# Uses wrong name for 'queue' module.
|
||||
# Uses internal 'test' and 'test.support' modules.
|
||||
rm -f t/integration/tests/test_multiprocessing.py
|
||||
|
||||
# Windows only
|
||||
rm -f t/unit/test_win32.py
|
||||
|
||||
py.test-3
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
9f2a44024e45c4e7667472a0a3ade7caae755ec7c163929433f818e4b87165218b9cc9545bdee2254e7159c206e525306e383d38906b00fd5428bd1616c39b8f billiard-3.6.4.0.tar.gz
|
||||
589f57ce516cec2740cff6f06f396caac856b75ff4c7dc022c6b1b60f0d97f590667ff3c0ee4887926556c073241d89a4734658d35dcfb41fc71117fdc2c8426 py3-billiard-py311.patch
|
||||
"
|
|
@ -1,32 +0,0 @@
|
|||
# Maintainer: Drew DeVault <sir@cmpwn.com>
|
||||
pkgname=py3-case
|
||||
_pyname=case
|
||||
pkgver=1.5.3
|
||||
pkgrel=6
|
||||
pkgdesc="Python unittest utilities"
|
||||
url="https://github.com/celery/case/"
|
||||
arch="noarch"
|
||||
license="BSD-3-Clause"
|
||||
depends="python3 py3-six"
|
||||
makedepends="py3-setuptools"
|
||||
checkdepends="py3-coverage py3-mock py3-nose"
|
||||
_pypiprefix="${_pyname%${_pyname#?}}"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
|
||||
builddir="$srcdir/$_pyname-$pkgver"
|
||||
|
||||
replaces="py-case" # Backwards compatibility
|
||||
provides="py-case=$pkgver-r$pkgrel" # Backwards compatibility
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 setup.py test
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
sha512sums="ae98a571c282f80c685c42ab1dc578847fe88cf8cd07faff505a8df8e3282a602908a8780ab88b36851e3ee6f3c178405e5c50776fd0f49fcc990087575f2958 case-1.5.3.tar.gz"
|
|
@ -1,54 +0,0 @@
|
|||
# Contributor: Celeste <cielesti@protonmail.com>
|
||||
# Maintainer: Celeste <cielesti@protonmail.com>
|
||||
pkgname=py3-django-oauth-toolkit
|
||||
pkgver=2.3.0
|
||||
pkgrel=0
|
||||
pkgdesc="OAuth2 Provider for Django"
|
||||
url="https://django-oauth-toolkit.readthedocs.io/"
|
||||
arch="noarch"
|
||||
license="BSD-2-Clause-Views"
|
||||
depends="
|
||||
py3-django
|
||||
py3-jwcrypto
|
||||
py3-oauthlib
|
||||
py3-requests
|
||||
"
|
||||
makedepends="
|
||||
py3-gpep517
|
||||
py3-setuptools
|
||||
py3-wheel
|
||||
"
|
||||
checkdepends="
|
||||
py3-django-rest-framework
|
||||
py3-pytest-cov
|
||||
py3-pytest-django
|
||||
py3-pytest-forked
|
||||
py3-pytest-mock
|
||||
py3-pytest-xdist
|
||||
py3-tz
|
||||
"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="https://github.com/jazzband/django-oauth-toolkit/archive/$pkgver/py3-django-oauth-toolkit-$pkgver.tar.gz"
|
||||
builddir="$srcdir/django-oauth-toolkit-$pkgver"
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir .dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m venv --clear --without-pip --system-site-packages .testenv
|
||||
.testenv/bin/python3 -m installer .dist/*.whl
|
||||
DJANGO_SETTINGS_MODULE=tests.settings \
|
||||
.testenv/bin/python3 -m pytest -n auto --forked
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
.dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
6e4701210300e3e04f85a38e3461daebed7f5d305e8d11fc60a31a715f43d9fc2eed50cf5ff381e6ce11dca479a7dadfbdfacab37e06d88a674b872a50c1a9d1 py3-django-oauth-toolkit-2.3.0.tar.gz
|
||||
"
|
|
@ -1,37 +0,0 @@
|
|||
# Contributor: prspkt <prspkt@protonmail.com>
|
||||
# Maintainer: prspkt <prspkt@protonmail.com>
|
||||
pkgname=py3-jwcrypto
|
||||
_pkgname=jwcrypto
|
||||
pkgver=1.5.0
|
||||
pkgrel=1
|
||||
pkgdesc="Python module implementing JOSE Web standards"
|
||||
url="https://github.com/latchset/jwcrypto"
|
||||
arch="noarch"
|
||||
license="LGPL-3.0-only"
|
||||
depends="python3 py3-deprecated py3-cryptography"
|
||||
makedepends="py3-gpep517 py3-setuptools py3-wheel"
|
||||
checkdepends="py3-pytest"
|
||||
subpackages="$pkgname-doc $pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
|
||||
builddir="$srcdir/$_pkgname-$pkgver"
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir .dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m venv --clear --without-pip --system-site-packages .testenv
|
||||
.testenv/bin/python3 -m installer .dist/*.whl
|
||||
.testenv/bin/python3 -m pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
.dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
8cb638203de32c5d63cc567069fc0ccf2195bb9a1f9783b747e7b77d38fb01d9512e82406f925010f70e4b7e73c8d699e0c32c5c89ee71cb99dd594a7e84c47e jwcrypto-1.5.0.tar.gz
|
||||
"
|
|
@ -1,41 +0,0 @@
|
|||
# Contributor: Stefan Wagner <stw@bit-strickerei.de>
|
||||
# Maintainer: Drew DeVault <sir@cmpwn.com>
|
||||
pkgname=py3-kombu
|
||||
pkgver=5.2.4
|
||||
pkgrel=2
|
||||
pkgdesc="a message queue abstraction layer"
|
||||
options="!check" # 3 Redis tests fail
|
||||
url="https://pypi.org/project/kombu/"
|
||||
arch="noarch !s390x" # Limited by py3-dill
|
||||
license="BSD-3-Clause"
|
||||
depends="py3-amqp py3-vine"
|
||||
makedepends="py3-setuptools py3-gpep517 py3-wheel"
|
||||
checkdepends="py3-pyro4 py3-case py3-nose py3-mock py3-tz py3-pytest py3-sqlalchemy py3-fakeredis"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/k/kombu/kombu-$pkgver.tar.gz
|
||||
fix-requirements.patch
|
||||
"
|
||||
builddir="$srcdir/kombu-$pkgver"
|
||||
|
||||
replaces="py-kombu" # Backwards compatibility
|
||||
provides="py-kombu=$pkgver-r$pkgrel" # Backwards compatibility
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 setup.py test
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
695813bee71d627649e772b45b25494784a6a81bcad92331160705e34d8b2268fa90629983ebcfd04ec23208508d422f1834cc56895532911602d58ec0090a03 kombu-5.2.4.tar.gz
|
||||
d296eba67b77d6a10176714facc45b3119a3c9dac1868cc281eea7cf3d0a6fceb4584836aea188db87eae3cae0f344a0f399e2fad248706c608ff3b1c28b3139 fix-requirements.patch
|
||||
"
|
|
@ -1,10 +0,0 @@
|
|||
diff --git a/requirements/test.txt b/requirements/test.txt
|
||||
index 9b8ca32..dd360da 100644
|
||||
--- a/requirements/test.txt
|
||||
+++ b/requirements/test.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-pytz>dev
|
||||
+pytz
|
||||
pytest~=7.0.1
|
||||
pytest-sugar
|
||||
Pyro4
|
32
backports/py3-mapbox-earcut/APKBUILD
Normal file
32
backports/py3-mapbox-earcut/APKBUILD
Normal file
|
@ -0,0 +1,32 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=py3-mapbox-earcut
|
||||
pkgver=1.0.1
|
||||
pkgrel=0
|
||||
pkgdesc="Python bindings for the mapbox earcut c++ library"
|
||||
url="https://github.com/skogler/mapbox_earcut_python"
|
||||
arch="all"
|
||||
license="ISC"
|
||||
depends="py3-numpy"
|
||||
makedepends="py3-setuptools py3-pybind11-dev python3-dev"
|
||||
checkdepends="pytest"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/skogler/mapbox_earcut_python/archive/refs/tags/v$pkgver.tar.gz"
|
||||
builddir="$srcdir/mapbox_earcut_python-$pkgver"
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m venv --clear --without-pip --system-site-packages test-env
|
||||
test-env/bin/python3 setup.py install
|
||||
test-env/bin/python3 -m pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
cdb32585cbaf74c15e59af0ae70d983dd2f9bc9cfe1b59b3eadc4d442f7d962241854b589a035deae67cacd9334833b911d0981f0d417fe587348fc7d24f0c0a py3-mapbox-earcut-1.0.1.tar.gz
|
||||
"
|
34
backports/py3-numpy-stl/APKBUILD
Normal file
34
backports/py3-numpy-stl/APKBUILD
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=py3-numpy-stl
|
||||
pkgver=3.0.1
|
||||
pkgrel=1
|
||||
pkgdesc="Library for working with STLs"
|
||||
url="https://github.com/WoLpH/numpy-stl"
|
||||
# s390x: no py3-utils
|
||||
arch="noarch !s390x"
|
||||
license="BSD-3-Clause"
|
||||
depends="python3 py3-utils py3-numpy"
|
||||
makedepends="py3-setuptools"
|
||||
checkdepends="py3-pytest"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/wolph/numpy-stl/releases/download/v$pkgver/numpy-stl-$pkgver.tar.gz"
|
||||
builddir="$srcdir/numpy-stl-$pkgver"
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
# deselected test needs xvfb-run and fails
|
||||
pytest \
|
||||
--deselect tests/test_ascii.py::test_use_with_qt_with_custom_locale_decimal_delimeter
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
d01abb8f54738600ce36c8c44e1392957061030e7accbbfa0352aea4a904323a96712099146b311ce9518f243317c25c47cfb30930469602c0ad439de9f43c5f py3-numpy-stl-3.0.1.tar.gz
|
||||
"
|
|
@ -1,30 +0,0 @@
|
|||
# Contributor: Sam Whited <sam@samwhited.com>
|
||||
# Maintainer: Sam Whited <sam@samwhited.com>
|
||||
pkgname=py3-pycares
|
||||
_pkgname=pycares
|
||||
pkgver=4.3.0
|
||||
pkgrel=0
|
||||
pkgdesc="A library for performing DNS resolutions using c-ares."
|
||||
url="https://pypi.org/project/pycares/"
|
||||
arch="all"
|
||||
license="MIT"
|
||||
depends="python3 py3-idna py3-cffi"
|
||||
makedepends="py3-setuptools c-ares-dev python3-dev"
|
||||
subpackages="$pkgname-doc"
|
||||
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
|
||||
builddir="$srcdir/$_pkgname-$pkgver"
|
||||
options="!check" # tests not included in source package.
|
||||
|
||||
build() {
|
||||
export PYCARES_USE_SYSTEM_LIB=1
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
install -Dm644 LICENSE README.rst -t "$pkgdir"/usr/share/licenses/$pkgname
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
ffabb9abf3f131a373302a7992af6335bc25013f119dce51731e5e04999948c62c42444adac4427c856b14fbaa481266449a39ff0715c5d8a45517cb22c9e539 pycares-4.3.0.tar.gz
|
||||
"
|
35
backports/py3-pyinstrument/APKBUILD
Normal file
35
backports/py3-pyinstrument/APKBUILD
Normal file
|
@ -0,0 +1,35 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=py3-pyinstrument
|
||||
pkgver=4.6.1
|
||||
pkgrel=0
|
||||
pkgdesc="Call stack profiler for Python"
|
||||
url="https://github.com/joerick/pyinstrument"
|
||||
arch="all"
|
||||
license="BSD-3-Clause"
|
||||
makedepends="py3-gpep517 py3-setuptools py3-wheel python3-dev"
|
||||
checkdepends="py3-pytest py3-flaky py3-trio py3-greenlet"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/joerick/pyinstrument/archive/refs/tags/v$pkgver.tar.gz"
|
||||
builddir="$srcdir/pyinstrument-$pkgver"
|
||||
options="!check" # currently not working
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir .dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m venv --clear --without-pip --system-site-packages .testenv
|
||||
.testenv/bin/python3 -m installer .dist/*.whl
|
||||
.testenv/bin/python3 -m pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" .dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
7eb24fb27bfb145b5a06976bdaac1d06de87549f3ae9505d4d56608af0776ff18f5ec9fccf5d3f3df797f1b91281d15bbd825fa42d268baf91524fc2f4efd59a py3-pyinstrument-4.6.1.tar.gz
|
||||
"
|
49
backports/py3-pynest2d/APKBUILD
Normal file
49
backports/py3-pynest2d/APKBUILD
Normal file
|
@ -0,0 +1,49 @@
|
|||
# Contributor: Anjandev Momi <anjan@momi.ca>
|
||||
# Maintainer: Anjandev Momi <anjan@momi.ca>
|
||||
pkgname=py3-pynest2d
|
||||
pkgver=5.2.2
|
||||
pkgrel=2
|
||||
pkgdesc="Python bindings for libnest2d"
|
||||
url="https://github.com/Ultimaker/pynest2d"
|
||||
arch="all"
|
||||
license="LGPL-3.0-or-later"
|
||||
makedepends="samurai cmake libnest2d-dev clipper-dev py3-sip nlopt-dev boost-dev python3-dev"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/pynest2d/archive/refs/tags/$pkgver.tar.gz
|
||||
cmake.patch
|
||||
cmake-helpers.patch
|
||||
pyproject.patch"
|
||||
builddir="$srcdir/pynest2d-$pkgver"
|
||||
options="!check" # doesn't seem like tests are packaged anymore
|
||||
|
||||
prepare() {
|
||||
mv ./python ./src
|
||||
default_prepare
|
||||
}
|
||||
|
||||
build() {
|
||||
if [ "$CBUILD" != "$CHOST" ]; then
|
||||
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
|
||||
fi
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DBUILD_SHARED_LIBS=True \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
$CMAKE_CROSSOPTS
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd build
|
||||
CTEST_OUTPUT_ON_FAILURE=TRUE ctest
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f5d701e431c81f8d2da7b14ca5677d3303064cf7910e80d289d7ff8fe99117fb9c470242f25f21fa8e1f064c63accf5349f4956981e316b09b14342223f79b61 py3-pynest2d-5.2.2.tar.gz
|
||||
c8133d221a2fd8ed5fb32933a69f992dab2e83cdb9db30dcb715ebdfe6d403be3e94df393a921f506b63ef9d8b30a107f26b57cd39810faa9bee461afe5e1afd cmake.patch
|
||||
dbf6609a21e39ae87fa89f2faf9c98a011f287cb383c5b74f92f41e3a350b487e69643c94110f7fcc25e9e25921a698cc20d9ee021d36ff908d03c0d5ca88a46 cmake-helpers.patch
|
||||
f1b710509d97b5a2a4d021747e73884d27ae00fd93a04c90be01f123cdcc59be4757b4a73dff9c9921b7794551e531cf6729e4211144c60294d107b92a928b51 pyproject.patch
|
||||
"
|
253
backports/py3-pynest2d/cmake-helpers.patch
Normal file
253
backports/py3-pynest2d/cmake-helpers.patch
Normal file
|
@ -0,0 +1,253 @@
|
|||
--- /dev/null
|
||||
+++ ./cmake/CMakeBuilder.py
|
||||
@@ -0,0 +1,13 @@
|
||||
+from sipbuild import SetuptoolsBuilder
|
||||
+
|
||||
+
|
||||
+class CMakeBuilder(SetuptoolsBuilder):
|
||||
+ def __init__(self, project, **kwargs):
|
||||
+ print("Using the CMake builder")
|
||||
+ super().__init__(project, **kwargs)
|
||||
+
|
||||
+ def build(self):
|
||||
+ """ Only Generate the source files """
|
||||
+ print("Generating the source files")
|
||||
+ self._generate_bindings()
|
||||
+ self._generate_scripts()
|
||||
\ No newline at end of file
|
||||
--- /dev/null
|
||||
+++ ./cmake/FindSIP.py
|
||||
@@ -0,0 +1,57 @@
|
||||
+# -*- coding: utf-8 -*-
|
||||
+#
|
||||
+# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
|
||||
+# All rights reserved.
|
||||
+#
|
||||
+# Redistribution and use in source and binary forms, with or without
|
||||
+# modification, are permitted provided that the following conditions are met:
|
||||
+# * Redistributions of source code must retain the above copyright
|
||||
+# notice, this list of conditions and the following disclaimer.
|
||||
+# * Redistributions in binary form must reproduce the above copyright
|
||||
+# notice, this list of conditions and the following disclaimer in the
|
||||
+# documentation and/or other materials provided with the distribution.
|
||||
+# * Neither the name of the Simon Edwards <simon@simonzone.com> nor the
|
||||
+# names of its contributors may be used to endorse or promote products
|
||||
+# derived from this software without specific prior written permission.
|
||||
+#
|
||||
+# THIS SOFTWARE IS PROVIDED BY Simon Edwards <simon@simonzone.com> ''AS IS'' AND ANY
|
||||
+# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
+# DISCLAIMED. IN NO EVENT SHALL Simon Edwards <simon@simonzone.com> BE LIABLE FOR ANY
|
||||
+# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
+# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+#
|
||||
+# FindSIP.py
|
||||
+# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
|
||||
+# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
+
|
||||
+try:
|
||||
+ import sipbuild
|
||||
+
|
||||
+ print("sip_version:%06.0x" % sipbuild.version.SIP_VERSION)
|
||||
+ print("sip_version_num:%d" % sipbuild.version.SIP_VERSION)
|
||||
+ print("sip_version_str:%s" % sipbuild.version.SIP_VERSION_STR)
|
||||
+
|
||||
+ from distutils.sysconfig import get_python_lib
|
||||
+ python_modules_dir = get_python_lib(plat_specific=1)
|
||||
+ print("default_sip_dir:%s" % python_modules_dir)
|
||||
+except ImportError: # Code for SIP v4
|
||||
+ import sipconfig
|
||||
+
|
||||
+ sipcfg = sipconfig.Configuration()
|
||||
+ print("sip_version:%06.0x" % sipcfg.sip_version)
|
||||
+ print("sip_version_num:%d" % sipcfg.sip_version)
|
||||
+ print("sip_version_str:%s" % sipcfg.sip_version_str)
|
||||
+ print("sip_bin:%s" % sipcfg.sip_bin)
|
||||
+ print("default_sip_dir:%s" % sipcfg.default_sip_dir)
|
||||
+ print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
|
||||
+ # SIP 4.19.10+ has new sipcfg.sip_module_dir
|
||||
+ if hasattr(sipcfg, "sip_module_dir"):
|
||||
+ print("sip_module_dir:%s" % sipcfg.sip_module_dir)
|
||||
+ else:
|
||||
+ print("sip_module_dir:%s" % sipcfg.sip_mod_dir)
|
||||
--- /dev/null
|
||||
+++ ./cmake/FindSIP.cmake
|
||||
@@ -0,0 +1,65 @@
|
||||
+# Find SIP
|
||||
+# ~~~~~~~~
|
||||
+#
|
||||
+# SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
|
||||
+#
|
||||
+# Find the installed version of SIP. FindSIP should be called after Python
|
||||
+# has been found.
|
||||
+#
|
||||
+# This file defines the following variables:
|
||||
+#
|
||||
+# SIP_VERSION - The version of SIP found expressed as a 6 digit hex number
|
||||
+# suitable for comparison as a string.
|
||||
+#
|
||||
+# SIP_VERSION_STR - The version of SIP found as a human readable string.
|
||||
+#
|
||||
+# SIP_BINARY_PATH - Path and filename of the SIP command line executable.
|
||||
+#
|
||||
+# SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
|
||||
+#
|
||||
+# SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed
|
||||
+# into.
|
||||
+
|
||||
+# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
|
||||
+# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
+
|
||||
+
|
||||
+
|
||||
+IF(SIP_VERSION OR SIP_BUILD_EXECUTABLE)
|
||||
+ # Already in cache, be silent
|
||||
+ SET(SIP_FOUND TRUE)
|
||||
+ELSE()
|
||||
+
|
||||
+ FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH} NO_CMAKE_FIND_ROOT_PATH)
|
||||
+
|
||||
+ EXECUTE_PROCESS(COMMAND ${Python_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config)
|
||||
+ IF(sip_config)
|
||||
+ STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_version_num:([^\n]+).*$" "\\1" SIP_VERSION_NUM ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
|
||||
+ IF(${SIP_VERSION_STR} VERSION_LESS 5)
|
||||
+ STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_BINARY_PATH ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
|
||||
+ STRING(REGEX REPLACE ".*\nsip_module_dir:([^\n]+).*$" "\\1" SIP_MODULE_DIR ${sip_config})
|
||||
+ ELSE(${SIP_VERSION_STR} VERSION_LESS 5)
|
||||
+ FIND_PROGRAM(SIP_BUILD_EXECUTABLE sip-build)
|
||||
+ ENDIF(${SIP_VERSION_STR} VERSION_LESS 5)
|
||||
+ SET(SIP_FOUND TRUE)
|
||||
+ ENDIF(sip_config)
|
||||
+
|
||||
+ IF(SIP_FOUND)
|
||||
+ IF(NOT SIP_FIND_QUIETLY)
|
||||
+ MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}")
|
||||
+ ENDIF(NOT SIP_FIND_QUIETLY)
|
||||
+ ELSE(SIP_FOUND)
|
||||
+ IF(SIP_FIND_REQUIRED)
|
||||
+ MESSAGE(FATAL_ERROR "Could not find SIP")
|
||||
+ ENDIF(SIP_FIND_REQUIRED)
|
||||
+ ENDIF(SIP_FOUND)
|
||||
+
|
||||
+ENDIF()
|
||||
+
|
||||
+include(${CMAKE_SOURCE_DIR}/cmake/SIPMacros.cmake)
|
||||
+ADD_DEFINITIONS(-DSIP_VERSION=0x${SIP_VERSION})
|
||||
--- /dev/null
|
||||
+++ ./cmake/SIPMacros.cmake
|
||||
@@ -0,0 +1,105 @@
|
||||
+# Macros for SIP
|
||||
+# ~~~~~~~~~~~~~~
|
||||
+
|
||||
+set(SIP_ARGS --pep484-pyi --no-protected-is-public)
|
||||
+
|
||||
+function(add_sip_module MODULE_TARGET)
|
||||
+ if(NOT SIP_BUILD_EXECUTABLE)
|
||||
+ set(SIP_BUILD_EXECUTABLE ${CMAKE_PREFIX_PATH}/Scripts/sip-build)
|
||||
+ endif()
|
||||
+
|
||||
+ message(STATUS "SIP: Generating pyproject.toml")
|
||||
+ configure_file(${CMAKE_SOURCE_DIR}/pyproject.toml.in ${CMAKE_CURRENT_BINARY_DIR}/pyproject.toml)
|
||||
+ configure_file(${CMAKE_SOURCE_DIR}/cmake/CMakeBuilder.py ${CMAKE_CURRENT_BINARY_DIR}/CMakeBuilder.py)
|
||||
+ if(WIN32)
|
||||
+ set(ext .pyd)
|
||||
+ set(env_path_sep ";")
|
||||
+ else()
|
||||
+ set(ext .so)
|
||||
+ set(env_path_sep ":")
|
||||
+ endif()
|
||||
+
|
||||
+ message(STATUS "SIP: Generating source files")
|
||||
+ execute_process(
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
|
||||
+ COMMAND_ECHO STDOUT
|
||||
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
|
||||
+ )
|
||||
+ # This will generate the source-files during the configuration step in CMake. Needed to obtain the sources
|
||||
+
|
||||
+ # Touch the generated files (8 in total) to make them dirty and force them to rebuild
|
||||
+ message(STATUS "SIP: Touching the source files")
|
||||
+ set(_sip_output_files)
|
||||
+ list(LENGTH SIP_FILES _no_outputfiles)
|
||||
+ foreach(_concat_file_nr RANGE 0 ${_no_outputfiles})
|
||||
+ if(${_concat_file_nr} LESS 8)
|
||||
+ list(APPEND _sip_output_files "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/sip${MODULE_TARGET}part${_concat_file_nr}.cpp")
|
||||
+ endif()
|
||||
+ endforeach()
|
||||
+
|
||||
+ # Find the generated source files
|
||||
+ message(STATUS "SIP: Collecting the generated source files")
|
||||
+ file(GLOB sip_c "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.c")
|
||||
+ file(GLOB sip_cpp "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.cpp")
|
||||
+ file(GLOB sip_hdr "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.h")
|
||||
+
|
||||
+ # Add the user specified source files
|
||||
+ message(STATUS "SIP: Collecting the user specified source files")
|
||||
+ get_target_property(usr_src ${MODULE_TARGET} SOURCES)
|
||||
+
|
||||
+ # create the target library and link all the files (generated and user specified
|
||||
+ message(STATUS "SIP: Linking the interface target against the shared library")
|
||||
+ set(sip_sources "${sip_c}" "${sip_cpp}")
|
||||
+ if(${usr_src})
|
||||
+ list(APPEND sip_sources "${usr_src}")
|
||||
+ endif()
|
||||
+
|
||||
+ if (BUILD_SHARED_LIBS)
|
||||
+ add_library("sip_${MODULE_TARGET}" SHARED ${sip_sources})
|
||||
+ else()
|
||||
+ add_library("sip_${MODULE_TARGET}" STATIC ${sip_sources})
|
||||
+ endif()
|
||||
+
|
||||
+ # Make sure that the library name of the target is the same as the MODULE_TARGET with the appropriate extension
|
||||
+ target_link_libraries("sip_${MODULE_TARGET}" PRIVATE "${MODULE_TARGET}")
|
||||
+ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES PREFIX "")
|
||||
+ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES SUFFIX ${ext})
|
||||
+ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES OUTPUT_NAME "${MODULE_TARGET}")
|
||||
+
|
||||
+ # Add the custom command to (re-)generate the files and mark them as dirty. This allows the user to actually work
|
||||
+ # on the sip definition files without having to reconfigure the complete project.
|
||||
+ add_custom_command(
|
||||
+ TARGET "sip_${MODULE_TARGET}"
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
|
||||
+ COMMAND ${CMAKE_COMMAND} -E touch ${_sip_output_files}
|
||||
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
|
||||
+ MAIN_DEPENDENCY ${MODULE_SIP}
|
||||
+ DEPENDS ${sip_sources}
|
||||
+ VERBATIM
|
||||
+ )
|
||||
+
|
||||
+ set_target_properties("sip_${MODULE_TARGET}"
|
||||
+ PROPERTIES
|
||||
+ RESOURCE "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/${MODULE_TARGET}.pyi")
|
||||
+endfunction()
|
||||
+
|
||||
+function(install_sip_module MODULE_TARGET)
|
||||
+ if(DEFINED ARGV1)
|
||||
+ set(_install_path ${ARGV1})
|
||||
+ else()
|
||||
+ if(DEFINED Python_SITEARCH)
|
||||
+ set(_install_path ${Python_SITEARCH})
|
||||
+ elseif(DEFINED Python_SITELIB)
|
||||
+ set(_install_path ${Python_SITELIB})
|
||||
+ else()
|
||||
+ message(FATAL_ERROR "SIP: Specify the site-packages location")
|
||||
+ endif()
|
||||
+ endif()
|
||||
+ message(STATUS "SIP: Installing Python module and PEP 484 file in ${_install_path}")
|
||||
+ install(TARGETS "sip_${MODULE_TARGET}"
|
||||
+ ARCHIVE DESTINATION ${_install_path}
|
||||
+ LIBRARY DESTINATION ${_install_path}
|
||||
+ RUNTIME DESTINATION ${_install_path}
|
||||
+ RESOURCE DESTINATION ${_install_path}
|
||||
+ )
|
||||
+endfunction()
|
34
backports/py3-pynest2d/cmake.patch
Normal file
34
backports/py3-pynest2d/cmake.patch
Normal file
|
@ -0,0 +1,34 @@
|
|||
--- ./CMakeLists.txt.orig
|
||||
+++ ./CMakeLists.txt
|
||||
@@ -2,16 +2,25 @@
|
||||
project(pynest2d)
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
-find_package(nest2d REQUIRED)
|
||||
-find_package(cpython REQUIRED)
|
||||
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
|
||||
|
||||
-find_package(standardprojectsettings REQUIRED)
|
||||
-find_package(sipbuildtool REQUIRED)
|
||||
+find_package(Libnest2D REQUIRED)
|
||||
|
||||
+find_package(Python REQUIRED COMPONENTS Interpreter Development)
|
||||
+find_package(SIP REQUIRED 6.5.0)
|
||||
+
|
||||
add_library(pynest2d INTERFACE)
|
||||
-use_threads(pynest2d)
|
||||
|
||||
-target_link_libraries(pynest2d INTERFACE nest2d::nest2d cpython::cpython)
|
||||
+target_include_directories(pynest2d
|
||||
+ INTERFACE
|
||||
+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||
+ $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/python/>
|
||||
+ )
|
||||
+
|
||||
+find_package(Threads REQUIRED)
|
||||
+find_package(Boost REQUIRED)
|
||||
+target_link_libraries(pynest2d INTERFACE Libnest2D::libnest2d Python::Python Threads::Threads Boost::boost)
|
||||
+
|
||||
add_sip_module(pynest2d)
|
||||
install_sip_module(pynest2d)
|
||||
|
21
backports/py3-pynest2d/pyproject.patch
Normal file
21
backports/py3-pynest2d/pyproject.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
--- /dev/null
|
||||
+++ ./pyproject.toml.in
|
||||
@@ -0,0 +1,17 @@
|
||||
+[build-system]
|
||||
+requires = ["sip >=6, <7"]
|
||||
+build-backend = "sipbuild.api"
|
||||
+
|
||||
+[tool.sip.metadata]
|
||||
+name = "pynest2d"
|
||||
+
|
||||
+[tool.sip.project]
|
||||
+builder-factory = "CMakeBuilder"
|
||||
+sip-files-dir = "${CMAKE_CURRENT_SOURCE_DIR}/src/"
|
||||
+sip-include-dirs = ["CMAKE_CURRENT_SOURCE_DIR/src/"]
|
||||
+build-dir = "${CMAKE_CURRENT_BINARY_DIR}/pynest2d/"
|
||||
+
|
||||
+[tool.sip.bindings.pynest2d]
|
||||
+exceptions = true
|
||||
+release-gil = true
|
||||
+concatenate = 8
|
||||
\ No newline at end of file
|
34
backports/py3-rtree/APKBUILD
Normal file
34
backports/py3-rtree/APKBUILD
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Contributor: Alex Yam <alex@alexyam.com>
|
||||
# Maintainer: Alex Yam <alex@alexyam.com>
|
||||
pkgname=py3-rtree
|
||||
_pkgname=rtree
|
||||
pkgver=1.0.1
|
||||
pkgrel=1
|
||||
pkgdesc="Python3 library for r-tree spatial index (wrapper for libspatialindex)"
|
||||
url="https://pypi.org/project/Rtree/"
|
||||
# s390x: Test failed: IndexSerialization::test_interleaving - AssertionError
|
||||
# s390x: Test failed: IndexStream::test_stream_input - AssertionError
|
||||
arch="noarch !s390x"
|
||||
license="MIT"
|
||||
depends="python3 libspatialindex-dev"
|
||||
makedepends="py3-setuptools py3-wheel"
|
||||
checkdepends="py3-pytest py3-numpy"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/Toblerity/rtree/archive/$pkgver.tar.gz"
|
||||
builddir="$srcdir"/$_pkgname-$pkgver
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m pytest -v --doctest-modules rtree tests
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
473ed3bb6457a9831e464b102e52c9ff8667192d2c26880d4cb0bd3bbec51549a532d99ea44650be900298a1ea9302a6aab9c97e0b67c025a0362738062836c7 py3-rtree-1.0.1.tar.gz
|
||||
"
|
|
@ -1,50 +0,0 @@
|
|||
# Maintainer:
|
||||
pkgname=py3-structlog
|
||||
pkgver=23.1.0
|
||||
pkgrel=1
|
||||
pkgdesc="Simple, powerful, and fast logging for Python"
|
||||
url="https://github.com/hynek/structlog"
|
||||
arch="noarch"
|
||||
license="Apache-2.0 OR MIT"
|
||||
makedepends="
|
||||
py3-gpep517
|
||||
py3-hatch-fancy-pypi-readme
|
||||
py3-hatch-vcs
|
||||
py3-hatchling
|
||||
py3-wheel
|
||||
"
|
||||
checkdepends="
|
||||
py3-coverage
|
||||
py3-freezegun
|
||||
py3-pretend
|
||||
py3-pytest
|
||||
py3-pytest-asyncio
|
||||
py3-pytest-xdist
|
||||
py3-rich
|
||||
py3-simplejson
|
||||
"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/hynek/structlog/archive/refs/tags/$pkgver.tar.gz"
|
||||
builddir="$srcdir/structlog-$pkgver"
|
||||
|
||||
build() {
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver \
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m venv --clear --without-pip --system-site-packages testenv
|
||||
testenv/bin/python3 -m installer dist/*.whl
|
||||
testenv/bin/python3 -m pytest -n4
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
527f5811a3d2365490c55d8e1f1cc0537254d8667bfc56214769bd6aae9f5368a1534536f061dbc06213c32dd9253703f8535323466ddb66032c6c1f776814ac py3-structlog-23.1.0.tar.gz
|
||||
"
|
300
backports/py3-svgpath/105_use-better-than-nothing-font.patch
Normal file
300
backports/py3-svgpath/105_use-better-than-nothing-font.patch
Normal file
|
@ -0,0 +1,300 @@
|
|||
From a17ed35e490a99a7dfab9833f6f3be86f004f699 Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Drung <benjamin.drung@canonical.com>
|
||||
Date: Fri, 15 Dec 2023 15:32:16 +0100
|
||||
Subject: [PATCH] tests: Use better than nothing font
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Pillow 10.1.0 uses a version of Aileron Regular instead of the previous
|
||||
“better than nothing” default font (in case FreeType support is
|
||||
available). This font change changes the resulting bitmap.
|
||||
|
||||
Use the "better than nothing" font to keep the expected result
|
||||
identical. The proper solution is either to use one specific font in
|
||||
svg.path or make pillow support loading the “better than nothing”
|
||||
default font.
|
||||
|
||||
Bug-Debian: https://bugs.debian.org/1055159
|
||||
---
|
||||
tests/font.py | 145 ++++++++++++++++++++++++++++++++
|
||||
tests/test_boundingbox_image.py | 18 ++--
|
||||
tests/test_image.py | 18 +++-
|
||||
3 files changed, 170 insertions(+), 11 deletions(-)
|
||||
create mode 100644 tests/font.py
|
||||
|
||||
diff --git a/tests/font.py b/tests/font.py
|
||||
new file mode 100644
|
||||
index 0000000..d375f49
|
||||
--- /dev/null
|
||||
+++ b/tests/font.py
|
||||
@@ -0,0 +1,145 @@
|
||||
+# Code taken from https://github.com/python-pillow/Pillow/blob/main/src/PIL/ImageFont.py
|
||||
+#
|
||||
+# License: the open source HPND License
|
||||
+# Copyright (c) 1997-2003 by Secret Labs AB
|
||||
+# Copyright (c) 1996-2003 by Fredrik Lundh
|
||||
+
|
||||
+from PIL import Image, ImageFont
|
||||
+from io import BytesIO
|
||||
+import base64
|
||||
+
|
||||
+
|
||||
+def get_better_than_nothing_font():
|
||||
+ font = ImageFont.ImageFont()
|
||||
+ font._load_pilfont_data(
|
||||
+ # courB08
|
||||
+ BytesIO(
|
||||
+ base64.b64decode(
|
||||
+ b"""
|
||||
+UElMZm9udAo7Ozs7OzsxMDsKREFUQQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAA//8AAQAAAAAAAAABAAEA
|
||||
+BgAAAAH/+gADAAAAAQAAAAMABgAGAAAAAf/6AAT//QADAAAABgADAAYAAAAA//kABQABAAYAAAAL
|
||||
+AAgABgAAAAD/+AAFAAEACwAAABAACQAGAAAAAP/5AAUAAAAQAAAAFQAHAAYAAP////oABQAAABUA
|
||||
+AAAbAAYABgAAAAH/+QAE//wAGwAAAB4AAwAGAAAAAf/5AAQAAQAeAAAAIQAIAAYAAAAB//kABAAB
|
||||
+ACEAAAAkAAgABgAAAAD/+QAE//0AJAAAACgABAAGAAAAAP/6AAX//wAoAAAALQAFAAYAAAAB//8A
|
||||
+BAACAC0AAAAwAAMABgAAAAD//AAF//0AMAAAADUAAQAGAAAAAf//AAMAAAA1AAAANwABAAYAAAAB
|
||||
+//kABQABADcAAAA7AAgABgAAAAD/+QAFAAAAOwAAAEAABwAGAAAAAP/5AAYAAABAAAAARgAHAAYA
|
||||
+AAAA//kABQAAAEYAAABLAAcABgAAAAD/+QAFAAAASwAAAFAABwAGAAAAAP/5AAYAAABQAAAAVgAH
|
||||
+AAYAAAAA//kABQAAAFYAAABbAAcABgAAAAD/+QAFAAAAWwAAAGAABwAGAAAAAP/5AAUAAABgAAAA
|
||||
+ZQAHAAYAAAAA//kABQAAAGUAAABqAAcABgAAAAD/+QAFAAAAagAAAG8ABwAGAAAAAf/8AAMAAABv
|
||||
+AAAAcQAEAAYAAAAA//wAAwACAHEAAAB0AAYABgAAAAD/+gAE//8AdAAAAHgABQAGAAAAAP/7AAT/
|
||||
+/gB4AAAAfAADAAYAAAAB//oABf//AHwAAACAAAUABgAAAAD/+gAFAAAAgAAAAIUABgAGAAAAAP/5
|
||||
+AAYAAQCFAAAAiwAIAAYAAP////oABgAAAIsAAACSAAYABgAA////+gAFAAAAkgAAAJgABgAGAAAA
|
||||
+AP/6AAUAAACYAAAAnQAGAAYAAP////oABQAAAJ0AAACjAAYABgAA////+gAFAAAAowAAAKkABgAG
|
||||
+AAD////6AAUAAACpAAAArwAGAAYAAAAA//oABQAAAK8AAAC0AAYABgAA////+gAGAAAAtAAAALsA
|
||||
+BgAGAAAAAP/6AAQAAAC7AAAAvwAGAAYAAP////oABQAAAL8AAADFAAYABgAA////+gAGAAAAxQAA
|
||||
+AMwABgAGAAD////6AAUAAADMAAAA0gAGAAYAAP////oABQAAANIAAADYAAYABgAA////+gAGAAAA
|
||||
+2AAAAN8ABgAGAAAAAP/6AAUAAADfAAAA5AAGAAYAAP////oABQAAAOQAAADqAAYABgAAAAD/+gAF
|
||||
+AAEA6gAAAO8ABwAGAAD////6AAYAAADvAAAA9gAGAAYAAAAA//oABQAAAPYAAAD7AAYABgAA////
|
||||
++gAFAAAA+wAAAQEABgAGAAD////6AAYAAAEBAAABCAAGAAYAAP////oABgAAAQgAAAEPAAYABgAA
|
||||
+////+gAGAAABDwAAARYABgAGAAAAAP/6AAYAAAEWAAABHAAGAAYAAP////oABgAAARwAAAEjAAYA
|
||||
+BgAAAAD/+gAFAAABIwAAASgABgAGAAAAAf/5AAQAAQEoAAABKwAIAAYAAAAA//kABAABASsAAAEv
|
||||
+AAgABgAAAAH/+QAEAAEBLwAAATIACAAGAAAAAP/5AAX//AEyAAABNwADAAYAAAAAAAEABgACATcA
|
||||
+AAE9AAEABgAAAAH/+QAE//wBPQAAAUAAAwAGAAAAAP/7AAYAAAFAAAABRgAFAAYAAP////kABQAA
|
||||
+AUYAAAFMAAcABgAAAAD/+wAFAAABTAAAAVEABQAGAAAAAP/5AAYAAAFRAAABVwAHAAYAAAAA//sA
|
||||
+BQAAAVcAAAFcAAUABgAAAAD/+QAFAAABXAAAAWEABwAGAAAAAP/7AAYAAgFhAAABZwAHAAYAAP//
|
||||
+//kABQAAAWcAAAFtAAcABgAAAAD/+QAGAAABbQAAAXMABwAGAAAAAP/5AAQAAgFzAAABdwAJAAYA
|
||||
+AP////kABgAAAXcAAAF+AAcABgAAAAD/+QAGAAABfgAAAYQABwAGAAD////7AAUAAAGEAAABigAF
|
||||
+AAYAAP////sABQAAAYoAAAGQAAUABgAAAAD/+wAFAAABkAAAAZUABQAGAAD////7AAUAAgGVAAAB
|
||||
+mwAHAAYAAAAA//sABgACAZsAAAGhAAcABgAAAAD/+wAGAAABoQAAAacABQAGAAAAAP/7AAYAAAGn
|
||||
+AAABrQAFAAYAAAAA//kABgAAAa0AAAGzAAcABgAA////+wAGAAABswAAAboABQAGAAD////7AAUA
|
||||
+AAG6AAABwAAFAAYAAP////sABgAAAcAAAAHHAAUABgAAAAD/+wAGAAABxwAAAc0ABQAGAAD////7
|
||||
+AAYAAgHNAAAB1AAHAAYAAAAA//sABQAAAdQAAAHZAAUABgAAAAH/+QAFAAEB2QAAAd0ACAAGAAAA
|
||||
+Av/6AAMAAQHdAAAB3gAHAAYAAAAA//kABAABAd4AAAHiAAgABgAAAAD/+wAF//0B4gAAAecAAgAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAB
|
||||
+//sAAwACAecAAAHpAAcABgAAAAD/+QAFAAEB6QAAAe4ACAAGAAAAAP/5AAYAAAHuAAAB9AAHAAYA
|
||||
+AAAA//oABf//AfQAAAH5AAUABgAAAAD/+QAGAAAB+QAAAf8ABwAGAAAAAv/5AAMAAgH/AAACAAAJ
|
||||
+AAYAAAAA//kABQABAgAAAAIFAAgABgAAAAH/+gAE//sCBQAAAggAAQAGAAAAAP/5AAYAAAIIAAAC
|
||||
+DgAHAAYAAAAB//kABf/+Ag4AAAISAAUABgAA////+wAGAAACEgAAAhkABQAGAAAAAP/7AAX//gIZ
|
||||
+AAACHgADAAYAAAAA//wABf/9Ah4AAAIjAAEABgAAAAD/+QAHAAACIwAAAioABwAGAAAAAP/6AAT/
|
||||
++wIqAAACLgABAAYAAAAA//kABP/8Ai4AAAIyAAMABgAAAAD/+gAFAAACMgAAAjcABgAGAAAAAf/5
|
||||
+AAT//QI3AAACOgAEAAYAAAAB//kABP/9AjoAAAI9AAQABgAAAAL/+QAE//sCPQAAAj8AAgAGAAD/
|
||||
+///7AAYAAgI/AAACRgAHAAYAAAAA//kABgABAkYAAAJMAAgABgAAAAH//AAD//0CTAAAAk4AAQAG
|
||||
+AAAAAf//AAQAAgJOAAACUQADAAYAAAAB//kABP/9AlEAAAJUAAQABgAAAAH/+QAF//4CVAAAAlgA
|
||||
+BQAGAAD////7AAYAAAJYAAACXwAFAAYAAP////kABgAAAl8AAAJmAAcABgAA////+QAGAAACZgAA
|
||||
+Am0ABwAGAAD////5AAYAAAJtAAACdAAHAAYAAAAA//sABQACAnQAAAJ5AAcABgAA////9wAGAAAC
|
||||
+eQAAAoAACQAGAAD////3AAYAAAKAAAAChwAJAAYAAP////cABgAAAocAAAKOAAkABgAA////9wAG
|
||||
+AAACjgAAApUACQAGAAD////4AAYAAAKVAAACnAAIAAYAAP////cABgAAApwAAAKjAAkABgAA////
|
||||
++gAGAAACowAAAqoABgAGAAAAAP/6AAUAAgKqAAACrwAIAAYAAP////cABQAAAq8AAAK1AAkABgAA
|
||||
+////9wAFAAACtQAAArsACQAGAAD////3AAUAAAK7AAACwQAJAAYAAP////gABQAAAsEAAALHAAgA
|
||||
+BgAAAAD/9wAEAAACxwAAAssACQAGAAAAAP/3AAQAAALLAAACzwAJAAYAAAAA//cABAAAAs8AAALT
|
||||
+AAkABgAAAAD/+AAEAAAC0wAAAtcACAAGAAD////6AAUAAALXAAAC3QAGAAYAAP////cABgAAAt0A
|
||||
+AALkAAkABgAAAAD/9wAFAAAC5AAAAukACQAGAAAAAP/3AAUAAALpAAAC7gAJAAYAAAAA//cABQAA
|
||||
+Au4AAALzAAkABgAAAAD/9wAFAAAC8wAAAvgACQAGAAAAAP/4AAUAAAL4AAAC/QAIAAYAAAAA//oA
|
||||
+Bf//Av0AAAMCAAUABgAA////+gAGAAADAgAAAwkABgAGAAD////3AAYAAAMJAAADEAAJAAYAAP//
|
||||
+//cABgAAAxAAAAMXAAkABgAA////9wAGAAADFwAAAx4ACQAGAAD////4AAYAAAAAAAoABwASAAYA
|
||||
+AP////cABgAAAAcACgAOABMABgAA////+gAFAAAADgAKABQAEAAGAAD////6AAYAAAAUAAoAGwAQ
|
||||
+AAYAAAAA//gABgAAABsACgAhABIABgAAAAD/+AAGAAAAIQAKACcAEgAGAAAAAP/4AAYAAAAnAAoA
|
||||
+LQASAAYAAAAA//gABgAAAC0ACgAzABIABgAAAAD/+QAGAAAAMwAKADkAEQAGAAAAAP/3AAYAAAA5
|
||||
+AAoAPwATAAYAAP////sABQAAAD8ACgBFAA8ABgAAAAD/+wAFAAIARQAKAEoAEQAGAAAAAP/4AAUA
|
||||
+AABKAAoATwASAAYAAAAA//gABQAAAE8ACgBUABIABgAAAAD/+AAFAAAAVAAKAFkAEgAGAAAAAP/5
|
||||
+AAUAAABZAAoAXgARAAYAAAAA//gABgAAAF4ACgBkABIABgAAAAD/+AAGAAAAZAAKAGoAEgAGAAAA
|
||||
+AP/4AAYAAABqAAoAcAASAAYAAAAA//kABgAAAHAACgB2ABEABgAAAAD/+AAFAAAAdgAKAHsAEgAG
|
||||
+AAD////4AAYAAAB7AAoAggASAAYAAAAA//gABQAAAIIACgCHABIABgAAAAD/+AAFAAAAhwAKAIwA
|
||||
+EgAGAAAAAP/4AAUAAACMAAoAkQASAAYAAAAA//gABQAAAJEACgCWABIABgAAAAD/+QAFAAAAlgAK
|
||||
+AJsAEQAGAAAAAP/6AAX//wCbAAoAoAAPAAYAAAAA//oABQABAKAACgClABEABgAA////+AAGAAAA
|
||||
+pQAKAKwAEgAGAAD////4AAYAAACsAAoAswASAAYAAP////gABgAAALMACgC6ABIABgAA////+QAG
|
||||
+AAAAugAKAMEAEQAGAAD////4AAYAAgDBAAoAyAAUAAYAAP////kABQACAMgACgDOABMABgAA////
|
||||
++QAGAAIAzgAKANUAEw==
|
||||
+"""
|
||||
+ )
|
||||
+ ),
|
||||
+ Image.open(
|
||||
+ BytesIO(
|
||||
+ base64.b64decode(
|
||||
+ b"""
|
||||
+iVBORw0KGgoAAAANSUhEUgAAAx4AAAAUAQAAAAArMtZoAAAEwElEQVR4nABlAJr/AHVE4czCI/4u
|
||||
+Mc4b7vuds/xzjz5/3/7u/n9vMe7vnfH/9++vPn/xyf5zhxzjt8GHw8+2d83u8x27199/nxuQ6Od9
|
||||
+M43/5z2I+9n9ZtmDBwMQECDRQw/eQIQohJXxpBCNVE6QCCAAAAD//wBlAJr/AgALyj1t/wINwq0g
|
||||
+LeNZUworuN1cjTPIzrTX6ofHWeo3v336qPzfEwRmBnHTtf95/fglZK5N0PDgfRTslpGBvz7LFc4F
|
||||
+IUXBWQGjQ5MGCx34EDFPwXiY4YbYxavpnhHFrk14CDAAAAD//wBlAJr/AgKqRooH2gAgPeggvUAA
|
||||
+Bu2WfgPoAwzRAABAAAAAAACQgLz/3Uv4Gv+gX7BJgDeeGP6AAAD1NMDzKHD7ANWr3loYbxsAD791
|
||||
+NAADfcoIDyP44K/jv4Y63/Z+t98Ovt+ub4T48LAAAAD//wBlAJr/AuplMlADJAAAAGuAphWpqhMx
|
||||
+in0A/fRvAYBABPgBwBUgABBQ/sYAyv9g0bCHgOLoGAAAAAAAREAAwI7nr0ArYpow7aX8//9LaP/9
|
||||
+SjdavWA8ePHeBIKB//81/83ndznOaXx379wAAAD//wBlAJr/AqDxW+D3AABAAbUh/QMnbQag/gAY
|
||||
+AYDAAACgtgD/gOqAAAB5IA/8AAAk+n9w0AAA8AAAmFRJuPo27ciC0cD5oeW4E7KA/wD3ECMAn2tt
|
||||
+y8PgwH8AfAxFzC0JzeAMtratAsC/ffwAAAD//wBlAJr/BGKAyCAA4AAAAvgeYTAwHd1kmQF5chkG
|
||||
+ABoMIHcL5xVpTfQbUqzlAAAErwAQBgAAEOClA5D9il08AEh/tUzdCBsXkbgACED+woQg8Si9VeqY
|
||||
+lODCn7lmF6NhnAEYgAAA/NMIAAAAAAD//2JgjLZgVGBg5Pv/Tvpc8hwGBjYGJADjHDrAwPzAjv/H
|
||||
+/Wf3PzCwtzcwHmBgYGcwbZz8wHaCAQMDOwMDQ8MCBgYOC3W7mp+f0w+wHOYxO3OG+e376hsMZjk3
|
||||
+AAAAAP//YmCMY2A4wMAIN5e5gQETPD6AZisDAwMDgzSDAAPjByiHcQMDAwMDg1nOze1lByRu5/47
|
||||
+c4859311AYNZzg0AAAAA//9iYGDBYihOIIMuwIjGL39/fwffA8b//xv/P2BPtzzHwCBjUQAAAAD/
|
||||
+/yLFBrIBAAAA//9i1HhcwdhizX7u8NZNzyLbvT97bfrMf/QHI8evOwcSqGUJAAAA//9iYBB81iSw
|
||||
+pEE170Qrg5MIYydHqwdDQRMrAwcVrQAAAAD//2J4x7j9AAMDn8Q/BgYLBoaiAwwMjPdvMDBYM1Tv
|
||||
+oJodAAAAAP//Yqo/83+dxePWlxl3npsel9lvLfPcqlE9725C+acfVLMEAAAA//9i+s9gwCoaaGMR
|
||||
+evta/58PTEWzr21hufPjA8N+qlnBwAAAAAD//2JiWLci5v1+HmFXDqcnULE/MxgYGBj+f6CaJQAA
|
||||
+AAD//2Ji2FrkY3iYpYC5qDeGgeEMAwPDvwQBBoYvcTwOVLMEAAAA//9isDBgkP///0EOg9z35v//
|
||||
+Gc/eeW7BwPj5+QGZhANUswMAAAD//2JgqGBgYGBgqEMXlvhMPUsAAAAA//8iYDd1AAAAAP//AwDR
|
||||
+w7IkEbzhVQAAAABJRU5ErkJggg==
|
||||
+"""
|
||||
+ )
|
||||
+ )
|
||||
+ ),
|
||||
+ )
|
||||
+ return font
|
||||
diff --git a/tests/test_boundingbox_image.py b/tests/test_boundingbox_image.py
|
||||
index 21f19a7..414f0b1 100644
|
||||
--- a/tests/test_boundingbox_image.py
|
||||
+++ b/tests/test_boundingbox_image.py
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
from PIL import Image, ImageDraw, ImageColor, ImageChops
|
||||
from svg.path.path import CubicBezier, QuadraticBezier, Line, Arc
|
||||
+from .font import get_better_than_nothing_font
|
||||
|
||||
|
||||
RED = ImageColor.getcolor("red", mode="RGB")
|
||||
@@ -57,17 +58,15 @@ def draw_boundingbox(self, path):
|
||||
sys.platform != "linux", reason="Different platforms have different fonts"
|
||||
)
|
||||
def test_image(self):
|
||||
- self.draw.text((10, 10), "This is an SVG line:")
|
||||
- self.draw.text(
|
||||
- (10, 100),
|
||||
- "The red line is a bounding box.",
|
||||
- )
|
||||
+ font = get_better_than_nothing_font()
|
||||
+ self.draw.text((10, 10), "This is an SVG line:", font=font)
|
||||
+ self.draw.text((10, 100), "The red line is a bounding box.", font=font)
|
||||
|
||||
line1 = Line(40 + 60j, 200 + 80j)
|
||||
self.draw_path(line1)
|
||||
self.draw_boundingbox(line1)
|
||||
|
||||
- self.draw.text((10, 140), "These are Arc segments:")
|
||||
+ self.draw.text((10, 140), "These are Arc segments:", font=font)
|
||||
arc1 = Arc(260 + 320j, 100 + 100j, 0, 1, 1, 260 + 319j)
|
||||
self.draw_path(arc1)
|
||||
self.draw_boundingbox(arc1)
|
||||
@@ -83,6 +82,7 @@ def test_image(self):
|
||||
self.draw.text(
|
||||
(10, 500),
|
||||
"Next we have a quadratic bezier curve, with one tangent:",
|
||||
+ font=font,
|
||||
)
|
||||
start = 30 + 600j
|
||||
control = 400 + 540j
|
||||
@@ -95,12 +95,16 @@ def test_image(self):
|
||||
self.draw.text(
|
||||
(10, 670),
|
||||
"The white dot is the control point, and the cyan lines are ",
|
||||
+ font=font,
|
||||
+ )
|
||||
+ self.draw.text(
|
||||
+ (10, 690), "illustrating the how the control point works.", font=font
|
||||
)
|
||||
- self.draw.text((10, 690), "illustrating the how the control point works.")
|
||||
|
||||
self.draw.text(
|
||||
(10, 730),
|
||||
"Lastly is a cubic bezier, with 2 tangents, and 2 control points:",
|
||||
+ font=font,
|
||||
)
|
||||
|
||||
start = 200 + 800j
|
||||
diff --git a/tests/test_image.py b/tests/test_image.py
|
||||
index 49967ea..ae3a357 100644
|
||||
--- a/tests/test_image.py
|
||||
+++ b/tests/test_image.py
|
||||
@@ -4,6 +4,7 @@
|
||||
from math import sqrt
|
||||
|
||||
from svg.path.path import CubicBezier, QuadraticBezier, Line, Arc
|
||||
+from .font import get_better_than_nothing_font
|
||||
|
||||
|
||||
RED = ImageColor.getcolor("red", mode="RGB")
|
||||
@@ -57,25 +58,30 @@ def draw_tangents(self, path, count):
|
||||
self.draw.line([c2t(p), c2t(tt + p)], fill=YELLOW, width=1)
|
||||
|
||||
def test_image(self):
|
||||
- self.draw.text((10, 10), "This is an SVG line:")
|
||||
+ font = get_better_than_nothing_font()
|
||||
+ self.draw.text((10, 10), "This is an SVG line:", font=font)
|
||||
self.draw.text(
|
||||
(10, 100),
|
||||
"The red line is a tangent, and the yellow is 90 degrees from that.",
|
||||
+ font=font,
|
||||
)
|
||||
|
||||
line1 = Line(40 + 60j, 200 + 80j)
|
||||
self.draw_path(line1)
|
||||
self.draw_tangents(line1, 1)
|
||||
|
||||
- self.draw.text((10, 140), "This is an Arc segment, almost a whole circle:")
|
||||
+ self.draw.text(
|
||||
+ (10, 140), "This is an Arc segment, almost a whole circle:", font=font
|
||||
+ )
|
||||
arc1 = Arc(260 + 320j, 100 + 100j, 0, 1, 1, 260 + 319j)
|
||||
self.draw_path(arc1)
|
||||
self.draw_tangents(arc1, 5)
|
||||
- self.draw.text((10, 460), "With five tangents.")
|
||||
+ self.draw.text((10, 460), "With five tangents.", font=font)
|
||||
|
||||
self.draw.text(
|
||||
(10, 500),
|
||||
"Next we have a quadratic bezier curve, with one tangent:",
|
||||
+ font=font,
|
||||
)
|
||||
start = 30 + 600j
|
||||
control = 400 + 540j
|
||||
@@ -88,12 +94,16 @@ def test_image(self):
|
||||
self.draw.text(
|
||||
(10, 670),
|
||||
"The white dot is the control point, and the cyan lines are ",
|
||||
+ font=font,
|
||||
+ )
|
||||
+ self.draw.text(
|
||||
+ (10, 690), "illustrating the how the control point works.", font=font
|
||||
)
|
||||
- self.draw.text((10, 690), "illustrating the how the control point works.")
|
||||
|
||||
self.draw.text(
|
||||
(10, 730),
|
||||
"Lastly is a cubic bezier, with 2 tangents, and 2 control points:",
|
||||
+ font=font,
|
||||
)
|
||||
|
||||
start = 30 + 800j
|
35
backports/py3-svgpath/APKBUILD
Normal file
35
backports/py3-svgpath/APKBUILD
Normal file
|
@ -0,0 +1,35 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=py3-svgpath
|
||||
pkgver=6.3
|
||||
pkgrel=0
|
||||
pkgdesc="SVG path and object parser"
|
||||
url="https://github.com/regebro/svg.path"
|
||||
arch="noarch"
|
||||
license="MIT"
|
||||
depends="python3"
|
||||
makedepends="py3-setuptools"
|
||||
checkdepends="py3-pytest py3-pillow"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/regebro/svg.path/archive/refs/tags/$pkgver.tar.gz
|
||||
105_use-better-than-nothing-font.patch
|
||||
no-install-tests.patch"
|
||||
builddir="$srcdir/svg.path-$pkgver"
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
PYTHONPATH=build/lib pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
fd9dd9e1e603be5e212e3eb247c9f3778203f5285397a4cdde4c038c3f31f7bc2b8904491c208256996e2fbd39b4e5f7ea58d964bd5d22bc09c57e4bc2c70317 py3-svgpath-6.3.tar.gz
|
||||
d12d32b0f6b075ee8602a7eee5dd1ddaa8f097fe3d471f2941fac0bba335641111eb2c0e2819dffea822f895833ffafa35baac80085cf759ca1ed8f7a6b92773 105_use-better-than-nothing-font.patch
|
||||
62ab1e0980c7fb797f74b81c937a68b6af1112fff293e6ddec6389a8e490a08e181c37217408b58ce3a2ae2afda7813bb3bbe57d5414cfc18e4e53e6d2f2ea5a no-install-tests.patch
|
||||
"
|
15
backports/py3-svgpath/no-install-tests.patch
Normal file
15
backports/py3-svgpath/no-install-tests.patch
Normal file
|
@ -0,0 +1,15 @@
|
|||
--- ./setup.py.orig
|
||||
+++ ./setup.py
|
||||
@@ -1,3 +1,3 @@
|
||||
-from setuptools import setup
|
||||
+from setuptools import setup, find_packages
|
||||
|
||||
-setup()
|
||||
+setup(packages=find_packages("src", exclude=["*tests"]))
|
||||
--- ./MANIFEST.in.orig
|
||||
+++ ./MANIFEST.in
|
||||
@@ -3,3 +3,4 @@
|
||||
|
||||
recursive-include src *.png
|
||||
|
||||
+global-exclude tests/*
|
64
backports/py3-trimesh/APKBUILD
Normal file
64
backports/py3-trimesh/APKBUILD
Normal file
|
@ -0,0 +1,64 @@
|
|||
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
|
||||
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
|
||||
pkgname=py3-trimesh
|
||||
pkgver=3.21.5
|
||||
pkgrel=0
|
||||
pkgdesc="Python library for working with triangular meshes"
|
||||
url="https://github.com/mikedh/trimesh"
|
||||
# x86, armhf, armv7 Tests fail on int64 to int32 casts on these arches
|
||||
# s390x, no py3-rtree
|
||||
# riscv64, no py3-shapely
|
||||
arch="noarch !x86 !armhf !armv7 !s390x !riscv64"
|
||||
license="MIT"
|
||||
depends="
|
||||
py3-colorlog
|
||||
py3-jsonschema
|
||||
py3-lxml
|
||||
py3-mapbox-earcut
|
||||
py3-msgpack
|
||||
py3-networkx
|
||||
py3-numpy
|
||||
py3-pillow
|
||||
py3-requests
|
||||
py3-rtree
|
||||
py3-scipy
|
||||
py3-shapely
|
||||
py3-svgpath
|
||||
python3
|
||||
"
|
||||
makedepends="
|
||||
py3-gpep517
|
||||
py3-setuptools
|
||||
py3-wheel
|
||||
"
|
||||
checkdepends="py3-pytest py3-pytest-xdist py3-pyinstrument"
|
||||
subpackages="$pkgname-pyc"
|
||||
options="!check" # Failing test units
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/mikedh/trimesh/archive/refs/tags/$pkgver.tar.gz"
|
||||
builddir="$srcdir/trimesh-$pkgver"
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
# test_obj.py: no format zae, probably needs more investigation
|
||||
python3 -m venv --clear --without-pip --system-site-packages testenv
|
||||
testenv/bin/python3 -m installer dist/*.whl
|
||||
testenv/bin/python3 -m pytest -n auto \
|
||||
--deselect tests/test_dae.py::DAETest::test_material_round \
|
||||
--deselect tests/test_dae.py::DAETest::test_obj_roundtrip \
|
||||
--deselect tests/test_light.py::LightTests::test_scene \
|
||||
--deselect tests/test_obj.py::OBJTest::test_multi_nodupe
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
4bf6879294042aea9bce65a79c1717de1bec92a0a9f6f420ed98dbc4cb5260dba4656ee0074f77d46d37c910838c7a4b7c7dff0249aa38109bb677993f886291 py3-trimesh-3.21.5.tar.gz
|
||||
"
|
46
backports/py3-utils/APKBUILD
Normal file
46
backports/py3-utils/APKBUILD
Normal file
|
@ -0,0 +1,46 @@
|
|||
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
|
||||
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
|
||||
pkgname=py3-utils
|
||||
_pkgname=python-utils
|
||||
pkgver=3.8.1
|
||||
pkgrel=0
|
||||
pkgdesc="Convenient utilities not included with the standard Python install"
|
||||
url="https://github.com/WoLpH/python-utils"
|
||||
arch="noarch"
|
||||
license="BSD-3-Clause"
|
||||
makedepends="py3-gpep517 py3-setuptools py3-wheel"
|
||||
checkdepends="py3-pytest py3-pytest-asyncio py3-loguru"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="
|
||||
https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
|
||||
|
||||
fix-setuptools-deprecation.patch
|
||||
pytest.patch
|
||||
typing-ext.patch
|
||||
"
|
||||
|
||||
builddir="$srcdir/$_pkgname-$pkgver"
|
||||
|
||||
build() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir .dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m venv --clear --without-pip --system-site-packages .testenv
|
||||
.testenv/bin/python3 -m installer .dist/*.whl
|
||||
.testenv/bin/python3 -m pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 -m installer -d "$pkgdir" \
|
||||
.dist/*.whl
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
ccba9651cc99a8f4e3f13e7ff66a43a40d2e85bc735b6246524269495ff321225a0dcad9abd03ca9cb61b4b1b35a27009fac3fe87e3f748ffc5c87a956acd335 python-utils-3.8.1.tar.gz
|
||||
c001453b958b8231806ef6a04fcd21e1d252eeec36d4e6cbfce35f0662bae76c3f7484e0e8ff06d68a3e9cc7d19c9cdbf792c13e0101c580bb5e8de9d837fde7 fix-setuptools-deprecation.patch
|
||||
99cc91ad155f8140aedc9420659c0e560a4d816ac1f85468ddb3a9fdc87526d591da916441d63b601146a86fb2c26f61c9dfbe37e31b86ee605f732e24e7b465 pytest.patch
|
||||
d68943e3301eaafe2a9ea27f382a2eba1ce98149d8cbbe91aa9222cf76a8f7bebba3d9dbfced54bd88c90688a6e18373f011fbb83cd36cbf2ecd3e36b034aa22 typing-ext.patch
|
||||
"
|
11
backports/py3-utils/fix-setuptools-deprecation.patch
Normal file
11
backports/py3-utils/fix-setuptools-deprecation.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- a/setup.cfg
|
||||
+++ b/setup.cfg
|
||||
@@ -2,7 +2,7 @@
|
||||
test = pytest
|
||||
|
||||
[metadata]
|
||||
-description-file = README.rst
|
||||
+description_file = README.rst
|
||||
|
||||
[nosetests]
|
||||
verbosity = 3
|
14
backports/py3-utils/pytest.patch
Normal file
14
backports/py3-utils/pytest.patch
Normal file
|
@ -0,0 +1,14 @@
|
|||
diff --git a/pytest.ini b/pytest.ini
|
||||
index a8e632a..e28ed7d 100644
|
||||
--- a/pytest.ini
|
||||
+++ b/pytest.ini
|
||||
@@ -5,9 +5,6 @@ python_files =
|
||||
|
||||
addopts =
|
||||
--doctest-modules
|
||||
- --cov python_utils
|
||||
- --cov-report term-missing
|
||||
-; --mypy
|
||||
|
||||
doctest_optionflags =
|
||||
ALLOW_UNICODE
|
22
backports/py3-utils/typing-ext.patch
Normal file
22
backports/py3-utils/typing-ext.patch
Normal file
|
@ -0,0 +1,22 @@
|
|||
diff --git a/python_utils/types.py b/python_utils/types.py
|
||||
index 01c319a..79ef950 100644
|
||||
--- a/python_utils/types.py
|
||||
+++ b/python_utils/types.py
|
||||
@@ -1,7 +1,6 @@
|
||||
# pyright: reportWildcardImportFromLibrary=false
|
||||
import datetime
|
||||
import decimal
|
||||
-from typing_extensions import * # type: ignore # noqa: F403
|
||||
from typing import * # type: ignore # pragma: no cover # noqa: F403
|
||||
from types import * # type: ignore # pragma: no cover # noqa: F403
|
||||
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -29,7 +29,6 @@
|
||||
),
|
||||
package_data={'python_utils': ['py.typed']},
|
||||
long_description=long_description,
|
||||
- install_requires=['typing_extensions>3.10.0.2'],
|
||||
tests_require=['pytest'],
|
||||
extras_require={
|
||||
'loguru': [
|
|
@ -1,33 +0,0 @@
|
|||
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
pkgname=py3-vine
|
||||
pkgver=5.0.0
|
||||
pkgrel=2
|
||||
pkgdesc="futures and promises implementation for python"
|
||||
url="https://github.com/celery/vine"
|
||||
arch="noarch"
|
||||
license="BSD-3-Clause"
|
||||
depends="python3"
|
||||
makedepends="py3-setuptools"
|
||||
checkdepends="py3-pytest py3-case py3-nose"
|
||||
subpackages="$pkgname-pyc"
|
||||
source="https://files.pythonhosted.org/packages/source/v/vine/vine-$pkgver.tar.gz"
|
||||
builddir="$srcdir/vine-$pkgver"
|
||||
|
||||
replaces="py-vine" # Backwards compatibility
|
||||
provides="py-vine=$pkgver-r$pkgrel" # Backwards compatibility
|
||||
|
||||
build() {
|
||||
python3 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
python3 -m pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
python3 setup.py install --skip-build --root="$pkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
ff8f4b3f675220772ed0523e468eedbaec4aca793877b984e9a215603d1288cc3cc71dfeb152219d22f98de0ac7e9f9fa0cc35c2424ff36044cfc8f28192c159 vine-5.0.0.tar.gz
|
||||
"
|
|
@ -1,7 +1,7 @@
|
|||
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
|
||||
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
|
||||
pkgname=signal-desktop
|
||||
pkgver=6.40.0
|
||||
pkgver=7.4.0
|
||||
pkgrel=0
|
||||
pkgdesc="A messaging app for simple private communication with friends"
|
||||
url="https://github.com/signalapp/Signal-Desktop/"
|
||||
|
@ -28,6 +28,7 @@ makedepends="
|
|||
cmake
|
||||
crc32c-dev
|
||||
dav1d-dev
|
||||
double-conversion-dev
|
||||
electron-dev
|
||||
electron-tasje
|
||||
ffmpeg-dev
|
||||
|
@ -39,6 +40,7 @@ makedepends="
|
|||
libjpeg-turbo-dev
|
||||
libepoxy-dev
|
||||
libevent-dev
|
||||
libsecret-dev
|
||||
libvpx-dev
|
||||
libwebp-dev
|
||||
lld
|
||||
|
@ -48,6 +50,7 @@ makedepends="
|
|||
npm
|
||||
openh264-dev
|
||||
openssl-dev
|
||||
opus-dev
|
||||
pipewire-dev
|
||||
protoc
|
||||
pulseaudio-dev
|
||||
|
@ -61,24 +64,24 @@ makedepends="
|
|||
options="net !check"
|
||||
|
||||
# follow signal-desktop package.json -> @signalapp/libsignal-client
|
||||
_libsignalver=0.32.1
|
||||
_libsignalver=0.41.2
|
||||
|
||||
# follow signal-desktop package.json -> @signalapp/ringrtc
|
||||
_ringrtcver=2.34.3
|
||||
_ringrtcver=2.39.2
|
||||
|
||||
# follow ringrtc (on version above) -> config/version.properties -> webrtc.version
|
||||
# downloading tarball generated with abuild snapshot (with gclient dependencies fetched)
|
||||
_webrtcver=5845j
|
||||
_webrtcver=6261c
|
||||
|
||||
# follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION
|
||||
# last bsqlite version: 8.5.2
|
||||
# last bsqlite version: 8.7.1
|
||||
_stokenizerver=0.2.1
|
||||
|
||||
source="
|
||||
https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v$pkgver/Signal-Desktop-$pkgver.tar.gz
|
||||
https://github.com/signalapp/libsignal/archive/refs/tags/v$_libsignalver/libsignal-$_libsignalver.tar.gz
|
||||
https://github.com/signalapp/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz
|
||||
https://s3.sakamoto.pl/lnl-aports-snapshots/webrtc-$_webrtcver.tar.zst
|
||||
https://ab-sn.lnl.gay/webrtc-$_webrtcver.tar.zst
|
||||
https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz
|
||||
|
||||
bettersqlite-use-system-sqlcipher.patch
|
||||
|
@ -88,21 +91,21 @@ source="
|
|||
signal-show-window-please.patch
|
||||
ringrtc-webrtc-renamed.patch
|
||||
webrtc-shared-like-my-wife.patch
|
||||
webrtc-use-alpine-target.patch
|
||||
webrtc-clang-debug-info.patch
|
||||
webrtc-compiler.patch
|
||||
webrtc-gcc13.patch
|
||||
|
||||
signal-desktop
|
||||
"
|
||||
builddir="$srcdir/Signal-Desktop-$pkgver"
|
||||
|
||||
export CC=clang
|
||||
export CXX=clang++
|
||||
# webrtc broken on clang https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227
|
||||
export CC=gcc
|
||||
export CXX=g++
|
||||
|
||||
# required to find the tools
|
||||
export AR=llvm-ar
|
||||
export NM=llvm-nm
|
||||
export LD=clang++
|
||||
export AR=ar
|
||||
export NM=nm
|
||||
export LD=g++
|
||||
|
||||
# less log spam, reproducible, allow lto with rust
|
||||
export CFLAGS="${CFLAGS/-g/} -O2 -Wno-error -Wno-deprecated-builtins -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations"
|
||||
|
@ -111,7 +114,7 @@ export CPPFLAGS="$CPPFLAGS -D__DATE__= -D__TIME__= -D__TIMESTAMP__="
|
|||
|
||||
export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
|
||||
export CARGO_PROFILE_RELEASE_STRIP="symbols"
|
||||
export RUSTFLAGS="$RUSTFLAGS -C linker=clang"
|
||||
#export RUSTFLAGS="$RUSTFLAGS -C linker=clang"
|
||||
|
||||
export YARN_CACHE_FOLDER="$srcdir/.yarn"
|
||||
|
||||
|
@ -198,15 +201,17 @@ prepare() {
|
|||
(
|
||||
cd "$srcdir"/webrtc-$_webrtcver
|
||||
|
||||
# opus - https://github.com/signalapp/opus/commit/593419e833acab4d15b4901fe156177fb7315468
|
||||
local use_system="
|
||||
brotli
|
||||
crc32c
|
||||
dav1d
|
||||
double-conversion
|
||||
ffmpeg
|
||||
flatbuffers
|
||||
fontconfig
|
||||
freetype
|
||||
harfbuzz-ng
|
||||
highway
|
||||
icu
|
||||
jsoncpp
|
||||
libaom
|
||||
|
@ -215,17 +220,19 @@ prepare() {
|
|||
libevent
|
||||
libjpeg
|
||||
libpng
|
||||
libsecret
|
||||
libvpx
|
||||
libwebp
|
||||
libxml
|
||||
libxslt
|
||||
openh264
|
||||
opus
|
||||
re2
|
||||
snappy
|
||||
woff2
|
||||
zlib
|
||||
"
|
||||
for _lib in $use_system libjpeg_turbo; do
|
||||
for _lib in $use_system double_conversion libjpeg_turbo; do
|
||||
msg "Removing buildscripts for system provided $_lib"
|
||||
find . -type f -path "*{third_party,ringrtc}/$_lib/*" \
|
||||
\! -path "*third_party/$_lib/chromium/*" \
|
||||
|
@ -318,7 +325,7 @@ build() {
|
|||
clang_base_path=\"/usr\"
|
||||
custom_toolchain=\"//build/toolchain/linux/unbundle:default\"
|
||||
is_cfi=false
|
||||
is_clang=true
|
||||
is_clang=false
|
||||
is_debug=false
|
||||
is_official_build=true
|
||||
host_toolchain=\"//build/toolchain/linux/unbundle:default\"
|
||||
|
@ -327,6 +334,7 @@ build() {
|
|||
rtc_use_pipewire=true
|
||||
symbol_level=0
|
||||
use_custom_libcxx=false
|
||||
use_lld=true
|
||||
use_sysroot=false
|
||||
"
|
||||
mkdir -p "$srcdir"/ringrtc-$_ringrtcver/out/release
|
||||
|
@ -464,20 +472,19 @@ package() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
6666029a4b7d163eb5d5833a73c699d11ddd56a644a66da3363b5874ff50469add0c1415b41e568882c9f33cec72024f6c2a50774f9b182d0634d24fb831119a Signal-Desktop-6.40.0.tar.gz
|
||||
855f053a1329d12e20f254f607db0c0db9f6e1a3eb10061996da75805bf462a5dee0f4f841ec679980c77da87d600f92a21cd643c36d44e017cb3cbf57003b09 libsignal-0.32.1.tar.gz
|
||||
83df430ead75eb965513b9dec9e722d10fc4c74dc6dba8ee809bd2b77657c9d545b8d72c00a99273183c3fbcaf94ee9894c5a2d57f45ffeb3419a9957fe74426 ringrtc-2.34.3.tar.gz
|
||||
a1e78d6c8fed69dbc9ece48dc2e5f0e38ab74d3483e02059c90abe9f0be6d915d0a135a0498c05fd9ef87f444b34efb0d67d7dc577f086cba4a6012981d9d9bd webrtc-5845j.tar.zst
|
||||
51edb647832a1f9658abb7fddb4c35e8c84f5ea73c36f52bb02cf3460b871ace5bc6a86b439df738d6fbc418f0753e717962a0edefa95a0d4b2ca846fa11371e Signal-Desktop-7.4.0.tar.gz
|
||||
a311dd8d61d6c072a76e247bf4e4d752f1fe9dfcf0993d1b14790dc2eeec65d3c1bf8b8288156dee5ff89cbed9e282b73a58fcdd69bda9b49441fc9c443a83ec libsignal-0.41.2.tar.gz
|
||||
c36eb4f3ab02cfa341ccb42a80d5fed53bf21bf495eb3627712db912c97bd76f4fb8fa1951ecfeff1b64c36fdfe72aec59bf459b27a612da5b4e16a885c225e4 ringrtc-2.39.2.tar.gz
|
||||
341144563eafbd6e263c46cca5cf4954c9d8c72ba4caea1c9342b5b5311e7f618f3e595051195f9894662928cc5015641303aae2c5d5bbc18b22fb36651ee2e8 webrtc-6261c.tar.zst
|
||||
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
|
||||
be5b4e823543b79175a12314f10c6326d9f0d59f470136962daed4665887006acc05b48b40dc1b67747396d8f6f7d23be298c1e110ccdd35ff9b09d5e6b80bab bettersqlite-use-system-sqlcipher.patch
|
||||
90d47914e30f095515c47c9ef7c763a7a2583a281228d6ea7e2a3444be670b3ae506c82b4fcea8a228f88f688a43c23c8dcef52b65805d2105287234550718a5 libsignal-auditable.patch
|
||||
60a45285d885922f5c21f64b761a10efbee9081baf3efa4c8c13abc6a43dc4d27662ed10e239b0fa2071ab9e3a0dbbb4b11d6e3d26fe2b74a19f39e72b74a5bd signal-disable-updates.patch
|
||||
92de6fc7cc5f2b6d65bedbd74cc733dd86dafc9cbfb9b727c3267aef63a71a07247cde9b163c68fddfeb9096dcd7f554d36d0b2de078d8905e3825645ddbd6eb libsignal-auditable.patch
|
||||
f13389dd7a1360022d919fa1350210a92e5b832aa32b0ac278b63b1f41462c7807ac28c7867eecf71dac8f3ca699fd0fb0d87de8d1244c3e65cc4b78304e8ef4 signal-disable-updates.patch
|
||||
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
|
||||
646d303fe58cae3f0896ae0275a66695b902fae6ddde7c568cc9798157dee9f45ceff907bc951fadc4c511d512a73d114b4e4f7c8914e2311c63929d29e1621a signal-show-window-please.patch
|
||||
ab51b8fdcda1d8811213d2c5d8cb5d8457b478a02e23ce40f36b38ec56d45a3bd7a2d184720c27046f98a27771551cfad93c1290fe93856cc02695d318b33e47 ringrtc-webrtc-renamed.patch
|
||||
9d92389637cdda83a0a7039fa6c52516d7bc491d0b1e42d5374b9d1f4fa7b9c930642f2dca896da17a2dc3344fa1bb97434c8dddd0539a4fedfd0dec809fc875 webrtc-shared-like-my-wife.patch
|
||||
354f516a74c5491727afe084ef7688b3e1359d230daa720ffc30b33d3ea7579c9f37a50fbdc5fe2e8dc5322e42a0a39e4ae3449d4cf5b77daed2229bd743028c webrtc-use-alpine-target.patch
|
||||
679b286d8f9f682d4de41402ffa6834d3085981ca5458cf0e02d3faa0c3c05b17f61b49b07b7fa42d9f91e737dc2f4e6086978332bb4111f8e9d3107736147ef webrtc-clang-debug-info.patch
|
||||
83fe8a7d8514018f8b5c217d3513345842f6037e6877cd5129479f03d91729b32621e814b4bdb0906df1fe825146bc7f1f72664434985e5e93f6df641a019420 webrtc-gcc13.patch
|
||||
e07ae8544988d402aaf0fbd95ea36a64c94c59566c561132578aa6dcf8ff11a34058530e64dc204e5cadc2482f1401e74b32384a144e5e08017c663d0cf7c2fc webrtc-compiler.patch
|
||||
88515d8b8cc82355c9f9b0f44fac83b7ff149b13e9fb102fd46036ec5234cfb2385fa5ad58a0520ee604b93dc4ddd6ae18a7005978ef207841645724ef7a9749 webrtc-gcc13.patch
|
||||
87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop
|
||||
"
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
out_dir = options.out_dir.strip('"') or os.path.join('build', configuration_name)
|
||||
|
||||
- cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node']
|
||||
+ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node']
|
||||
- cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', 'testing-fns']
|
||||
+ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', 'testing-fns']
|
||||
if configuration_name == 'Release':
|
||||
cmdline.append('--release')
|
||||
print("Running '%s'" % (' '.join(cmdline)))
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
diff --git a/rust/attest/src/dcap/sgx_report_body.rs b/rust/attest/src/dcap/sgx_report_body.rs
|
||||
index 056bef2b..6d3f0d5d 100644
|
||||
--- a/rust/attest/src/dcap/sgx_report_body.rs
|
||||
+++ b/rust/attest/src/dcap/sgx_report_body.rs
|
||||
@@ -20,7 +20,7 @@ const SGX_HASH_SIZE: usize = 32;
|
||||
|
||||
pub type MREnclave = [u8; SGX_HASH_SIZE];
|
||||
|
||||
-#[derive(Debug)]
|
||||
+#[derive(Copy, Clone, Debug)]
|
||||
#[repr(C, packed)]
|
||||
// sgx_report_body_t
|
||||
pub(crate) struct SgxReportBody {
|
||||
diff --git a/rust/attest/src/endian.rs b/rust/attest/src/endian.rs
|
||||
index ae9351eb..2e08c711 100644
|
||||
--- a/rust/attest/src/endian.rs
|
||||
+++ b/rust/attest/src/endian.rs
|
||||
@@ -7,7 +7,7 @@ use std::convert::{TryFrom, TryInto};
|
||||
|
||||
use hex::FromHex;
|
||||
|
||||
-#[derive(Debug)]
|
||||
+#[derive(Copy, Clone, Debug)]
|
||||
#[repr(C, packed)]
|
||||
pub(crate) struct UInt16LE {
|
||||
bytes: [u8; 2],
|
||||
@@ -27,7 +27,7 @@ impl From<u16> for UInt16LE {
|
||||
}
|
||||
}
|
||||
|
||||
-#[derive(Debug)]
|
||||
+#[derive(Copy, Clone, Debug)]
|
||||
#[repr(C, packed)]
|
||||
pub(crate) struct UInt32LE {
|
||||
bytes: [u8; 4],
|
||||
@@ -66,7 +66,7 @@ impl FromHex for UInt32LE {
|
||||
}
|
||||
}
|
||||
|
||||
-#[derive(Debug)]
|
||||
+#[derive(Copy, Clone, Debug)]
|
||||
#[repr(C, packed)]
|
||||
pub(crate) struct UInt64LE {
|
||||
bytes: [u8; 8],
|
|
@ -1,89 +0,0 @@
|
|||
core issue: https://github.com/rust-lang/rust-bindgen/issues/2312
|
||||
upstream: https://github.com/signalapp/boring/pull/19
|
||||
upstream's upstream: https://github.com/cloudflare/boring/pull/110
|
||||
|
||||
--- ./Cargo.toml.orig
|
||||
+++ ./Cargo.toml
|
||||
@@ -25,3 +25,6 @@
|
||||
# Use our fork of curve25519-dalek for eventual zkgroup support.
|
||||
curve25519-dalek = { git = 'https://github.com/signalapp/curve25519-dalek', branch = 'lizard2' }
|
||||
boring = { git = 'https://github.com/signalapp/boring', branch = 'libsignal'}
|
||||
+
|
||||
+[patch.'https://github.com/signalapp/boring']
|
||||
+boring-sys = { git = 'https://github.com/selfisekai/boring-cf', branch = 'i109-signal', package = 'boring-sys' }
|
||||
--- ./Cargo.lock.orig
|
||||
+++ ./Cargo.lock
|
||||
@@ -206,9 +206,9 @@
|
||||
|
||||
[[package]]
|
||||
name = "bindgen"
|
||||
-version = "0.60.1"
|
||||
+version = "0.62.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-checksum = "062dddbc1ba4aca46de6338e2bf87771414c335f7b2f2036e8f3e9befebf88e6"
|
||||
+checksum = "c6720a8b7b2d39dd533285ed438d458f65b31b5c257e6ac7bb3d7e82844dd722"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"cexpr",
|
||||
@@ -221,6 +221,7 @@
|
||||
"regex",
|
||||
"rustc-hash",
|
||||
"shlex",
|
||||
+ "syn",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -295,7 +296,7 @@
|
||||
[[package]]
|
||||
name = "boring-sys"
|
||||
version = "2.1.0"
|
||||
-source = "git+https://github.com/signalapp/boring?branch=libsignal#25e1dd8fa519ae90772008fbd4a284582096fece"
|
||||
+source = "git+https://github.com/selfisekai/boring-cf?branch=i109-signal#5c13f5c357c8b33c9978f2e447de2d6caf825d13"
|
||||
dependencies = [
|
||||
"bindgen",
|
||||
"cmake",
|
||||
@@ -1398,11 +1399,11 @@
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro2"
|
||||
-version = "1.0.29"
|
||||
+version = "1.0.54"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-checksum = "b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d"
|
||||
+checksum = "e472a104799c74b514a57226160104aa483546de37e839ec50e3c2e41dd87534"
|
||||
dependencies = [
|
||||
- "unicode-xid",
|
||||
+ "unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1868,13 +1869,13 @@
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
-version = "1.0.80"
|
||||
+version = "1.0.109"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-checksum = "d010a1623fbd906d51d650a9916aaefc05ffa0e4053ff7fe601167f3e715d194"
|
||||
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
- "unicode-xid",
|
||||
+ "unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1981,6 +1982,12 @@
|
||||
version = "0.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
|
||||
+
|
||||
+[[package]]
|
||||
+name = "unicode-ident"
|
||||
+version = "1.0.8"
|
||||
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
|
||||
|
||||
[[package]]
|
||||
name = "unicode-segmentation"
|
|
@ -1,9 +1,9 @@
|
|||
--- a/config/production.json
|
||||
+++ b/config/production.json
|
||||
@@ -11,5 +11,5 @@
|
||||
},
|
||||
"serverPublicParams": "AMhf5ywVwITZMsff/eCyudZx9JDmkkkbV6PInzG4p8x3VqVJSFiMvnvlEKWuRob/1eaIetR31IYeAbm0NdOuHH8Qi+Rexi1wLlpzIo1gstHWBfZzy1+qHRV5A4TqPp15YzBPm0WSggW6PbSn+F4lf57VCnHF7p8SvzAA2ZZJPYJURt8X7bbg+H3i+PEjH9DXItNEqs2sNcug37xZQDLm7X36nOoGPs54XsEGzPdEV+itQNGUFEjY6X9Uv+Acuks7NpyGvCoKxGwgKgE5XyJ+nNKlyHHOLb6N1NuHyBrZrgtY/JYJHRooo5CEqYKBqdFnmbTVGEkCvJKxLnjwKWf+fEPoWeQFj5ObDjcKMZf2Jm2Ae69x+ikU5gBXsRmoF94GXQ==",
|
||||
@@ -15,5 +15,5 @@
|
||||
"serverPublicParams": "AMhf5ywVwITZMsff/eCyudZx9JDmkkkbV6PInzG4p8x3VqVJSFiMvnvlEKWuRob/1eaIetR31IYeAbm0NdOuHH8Qi+Rexi1wLlpzIo1gstHWBfZzy1+qHRV5A4TqPp15YzBPm0WSggW6PbSn+F4lf57VCnHF7p8SvzAA2ZZJPYJURt8X7bbg+H3i+PEjH9DXItNEqs2sNcug37xZQDLm7X36nOoGPs54XsEGzPdEV+itQNGUFEjY6X9Uv+Acuks7NpyGvCoKxGwgKgE5XyJ+nNKlyHHOLb6N1NuHyBrZrgtY/JYJHRooo5CEqYKBqdFnmbTVGEkCvJKxLnjwKWf+fEPoWeQFj5ObDjcKMZf2Jm2Ae69x+ikU5gBXsRmoF94GXTLfN0/vLt98KDPnxwAQL9j5V1jGOY8jQl6MLxEs56cwXN0dqCnImzVH3TZT1cJ8SW1BRX6qIVxEzjsSGx3yxF3suAilPMqGRp4ffyopjMD1JXiKR2RwLKzizUe5e8XyGOy9fplzhw3jVzTRyUZTRSZKkMLWcQ/gv0E4aONNqs4P+NameAZYOD12qRkxosQQP5uux6B2nRyZ7sAV54DgFyLiRcq1FvwKw2EPQdk4HDoePrO/RNUbyNddnM/mMgj4FW65xCoT1LmjrIjsv/Ggdlx46ueczhMgtBunx1/w8k8V+l8LVZ8gAT6wkU5J+DPQalQguMg12Jzug3q4TbdHiGCmD9EunCwOmsLuLJkz6EcSYXtrlDEnAM+hicw7iergYLLlMXpfTdGxJCWJmP4zqUFeTTmsmhsjGBt7NiEB/9pFFEB3pSbf4iiUukw63Eo8Aqnf4iwob6X1QviCWuc8t0I=",
|
||||
"serverTrustRoot": "BXu6QIKVz5MA8gstzfOgRQGqyLqOwNKHL6INkv3IHWMF",
|
||||
"genericServerPublicParams": "AByD873dTilmOSG0TjKrvpeaKEsUmIO8Vx9BeMmftwUs9v7ikPwM8P3OHyT0+X3EUMZrSe9VUp26Wai51Q9I8mdk0hX/yo7CeFGJyzoOqn8e/i4Ygbn5HoAyXJx5eXfIbqpc0bIxzju4H/HOQeOpt6h742qii5u/cbwOhFZCsMIbElZTaeU+BWMBQiZHIGHT5IE0qCordQKZ5iPZom0HeFa8Yq0ShuEyAl0WINBiY6xE3H/9WnvzXBbMuuk//eRxXgzO8ieCeK8FwQNxbfXqZm6Ro1cMhCOF3u7xoX83QhpN",
|
||||
- "updatesEnabled": true
|
||||
+ "updatesEnabled": false
|
||||
}
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
--- ./package.json.orig
|
||||
+++ ./package.json
|
||||
@@ -431,7 +431,6 @@
|
||||
"libtextsecure/**",
|
||||
"ts/**/*.js",
|
||||
"ts/*.js",
|
||||
- "!build",
|
||||
"!ts/{storybook,test-node,test-mock,test-both,test-electron}",
|
||||
"!**/{tsconfig,bower,component}.json",
|
||||
"!**/.{github,husky,grenrc,npmrc,nycrc,taprc,bithoundrc}",
|
||||
@@ -468,9 +467,7 @@
|
||||
"!node_modules/spellchecker/vendor/hunspell/**/*",
|
||||
"!**/node_modules/*/{CHANGELOG.md,README.md,README,readme.md,readme,test,__tests__,tests,powered-test,example,examples,*.d.ts,.snyk-*.flag,benchmark}",
|
||||
"!**/node_modules/.bin",
|
||||
- "!**/node_modules/**/build/**",
|
||||
"node_modules/intl-tel-input/build/**",
|
||||
- "!**/node_modules/**/prebuilds/**",
|
||||
"!**/*.{o,hprof,orig,pyc,pyo,rbc,c,h,m}",
|
||||
"!**/._*",
|
||||
"!**/{.DS_Store,.git,.hg,.svn,CVS,RCS,SCCS,__pycache__,thumbs.db,.gitignore,.gitattributes,.flowconfig,.yarn-metadata.json,.idea,appveyor.yml,.travis.yml,circle.yml,npm-debug.log,.nyc_output,yarn.lock,.yarn-integrity}",
|
|
@ -1,11 +0,0 @@
|
|||
--- ./build/config/compiler/BUILD.gn.orig
|
||||
+++ ./build/config/compiler/BUILD.gn
|
||||
@@ -765,7 +765,7 @@
|
||||
# toolchain has this flag.
|
||||
# We only use one version of LLVM within a build so there's no need to
|
||||
# upgrade debug info, which can be expensive since it runs the verifier.
|
||||
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
+ #ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
}
|
||||
}
|
||||
|
40
backports/signal-desktop/webrtc-compiler.patch
Normal file
40
backports/signal-desktop/webrtc-compiler.patch
Normal file
|
@ -0,0 +1,40 @@
|
|||
--- ./build/config/compiler/BUILD.gn.orig
|
||||
+++ ./build/config/compiler/BUILD.gn
|
||||
@@ -624,14 +624,14 @@
|
||||
if (default_toolchain != "//build/toolchain/cros:target" &&
|
||||
!llvm_android_mainline) {
|
||||
cflags += [
|
||||
- "-mllvm",
|
||||
- "-split-threshold-for-reg-with-hint=0",
|
||||
+ #"-mllvm",
|
||||
+ #"-split-threshold-for-reg-with-hint=0",
|
||||
]
|
||||
if (use_thin_lto && is_a_target_toolchain) {
|
||||
if (is_win) {
|
||||
ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
|
||||
} else {
|
||||
- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
|
||||
+ #ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -805,7 +805,7 @@
|
||||
|
||||
# We only use one version of LLVM within a build so there's no need to
|
||||
# upgrade debug info, which can be expensive since it runs the verifier.
|
||||
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
+ #ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
}
|
||||
|
||||
# TODO(https://crbug.com/1211155): investigate why this isn't effective on
|
||||
@@ -1191,8 +1191,8 @@
|
||||
} else if (current_cpu == "arm64") {
|
||||
if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
|
||||
!(is_chromeos_lacros && is_chromeos_device)) {
|
||||
- cflags += [ "--target=aarch64-linux-gnu" ]
|
||||
- ldflags += [ "--target=aarch64-linux-gnu" ]
|
||||
+ cflags += [ "--target=aarch64-alpine-linux-musl" ]
|
||||
+ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
|
||||
}
|
||||
} else if (current_cpu == "mipsel" && !is_nacl) {
|
||||
ldflags += [ "-Wl,--hash-style=sysv" ]
|
|
@ -8,3 +8,13 @@
|
|||
|
||||
#include <string>
|
||||
|
||||
--- ./modules/audio_coding/neteq/reorder_optimizer.cc.orig
|
||||
+++ ./modules/audio_coding/neteq/reorder_optimizer.cc
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "modules/audio_coding/neteq/reorder_optimizer.h"
|
||||
|
||||
#include <algorithm>
|
||||
+#include <cstdint>
|
||||
#include <limits>
|
||||
#include <vector>
|
||||
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -480,11 +480,6 @@
|
||||
"rtc_base",
|
||||
"sdk",
|
||||
"video",
|
||||
-
|
||||
- # Added by RingRTC
|
||||
- # Necessary for use_custom_libcxx=true,
|
||||
- # which is in turn necessary for deploying to Ubuntu 16.04.
|
||||
- "//build/config:shared_library_deps",
|
||||
]
|
||||
|
||||
if (rtc_include_builtin_audio_codecs) {
|
|
@ -1,22 +0,0 @@
|
|||
this breaks the clang include path
|
||||
--
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ a/build/config/compiler/BUILD.gn
|
||||
@@ -1310,7 +1310,7 @@
|
||||
# paths to the tools it invokes. We don't want this because we don't
|
||||
# really need it and it can mess up the goma cache entries.
|
||||
if (is_clang && (!is_nacl || is_nacl_saigo)) {
|
||||
- cflags += [ "-no-canonical-prefixes" ]
|
||||
+ #cflags += [ "-no-canonical-prefixes" ]
|
||||
|
||||
# Same for links: Let the compiler driver invoke the linker
|
||||
# with a relative path and pass relative paths to built-in
|
||||
@@ -1319,7 +1319,7 @@
|
||||
# We don't link on goma, so this change is just for cleaner
|
||||
# internal linker invocations, for people who work on the build.
|
||||
if (!is_win) {
|
||||
- ldflags += [ "-no-canonical-prefixes" ]
|
||||
+ #ldflags += [ "-no-canonical-prefixes" ]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,13 +0,0 @@
|
|||
--- ./build/config/compiler/BUILD.gn
|
||||
+++ ./build/config/compiler/BUILD.gn
|
||||
@@ -937,8 +937,8 @@
|
||||
} else if (current_cpu == "arm64") {
|
||||
if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
|
||||
!(is_chromeos_lacros && is_chromeos_device)) {
|
||||
- cflags += [ "--target=aarch64-linux-gnu" ]
|
||||
- ldflags += [ "--target=aarch64-linux-gnu" ]
|
||||
+ cflags += [ "--target=aarch64-alpine-linux-musl" ]
|
||||
+ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
|
||||
}
|
||||
if (is_android) {
|
||||
# Outline atomics crash on Exynos 9810. http://crbug.com/1272795
|
83
backports/thelounge/APKBUILD
Normal file
83
backports/thelounge/APKBUILD
Normal file
|
@ -0,0 +1,83 @@
|
|||
# Contributor: Kay Thomas <kaythomas@pm.me>
|
||||
# Maintainer: Kay Thomas <kaythomas@pm.me>
|
||||
pkgname=thelounge
|
||||
pkgver=4.4.1
|
||||
pkgrel=1
|
||||
pkgdesc="Modern, responsive, cross-platform, self-hosted web IRC client"
|
||||
url="https://thelounge.chat"
|
||||
# x86: textrels
|
||||
# s390x: fails to check
|
||||
# riscv64: fails to build
|
||||
arch="all !x86 !s390x !riscv64"
|
||||
license="MIT"
|
||||
depends="nodejs"
|
||||
makedepends="yarn npm python3"
|
||||
subpackages="$pkgname-openrc"
|
||||
pkgusers="thelounge"
|
||||
pkggroups="thelounge"
|
||||
install="$pkgname.pre-install $pkgname.post-install"
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/thelounge/thelounge/archive/v$pkgver.tar.gz
|
||||
no-version-test.patch
|
||||
thelounge.initd
|
||||
allow-https-for-connect-src.patch
|
||||
"
|
||||
options="net" # npm
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
|
||||
yarn install --frozen-lockfile
|
||||
}
|
||||
|
||||
build() {
|
||||
NODE_ENV=production yarn run build
|
||||
}
|
||||
|
||||
check() {
|
||||
CI=yes yarn run test:mocha
|
||||
}
|
||||
|
||||
package() {
|
||||
yarn install --production --ignore-scripts --prefer-offline
|
||||
NODE_ENV=production npm install --unsafe-perm -g --prefix "$pkgdir"/usr
|
||||
|
||||
# Remove incorrect symlink, copy correct files
|
||||
rm "$pkgdir"/usr/lib/node_modules/thelounge
|
||||
mkdir -p "$pkgdir"/usr/lib/node_modules/thelounge
|
||||
cp -a index.js client public node_modules dist package.json "$pkgdir"/usr/lib/node_modules/thelounge/
|
||||
|
||||
# cleanup unused files
|
||||
find "$pkgdir" -type f -a \( \
|
||||
-name "*.ts" \
|
||||
-o -name "webpack*" \
|
||||
-o -name "tsconfig*" \
|
||||
-o -name "babel.config*" \
|
||||
-o -name "README*" \
|
||||
-o -name "CHANGELOG*" \
|
||||
-o -name "*.map" \
|
||||
-o -name "LICENSE" \
|
||||
\) \
|
||||
-delete
|
||||
|
||||
# Set home location
|
||||
echo /var/lib/thelounge > \
|
||||
"$pkgdir"/usr/lib/node_modules/$pkgname/.thelounge_home
|
||||
|
||||
# Add default config
|
||||
# this is only read from 'home' so we have to just put everything in var/lib
|
||||
install -dm755 -o thelounge -g thelounge \
|
||||
"$pkgdir"/var/lib/thelounge
|
||||
install -m644 -o thelounge -g thelounge \
|
||||
"$pkgdir"/usr/lib/node_modules/$pkgname/dist/defaults/config.js \
|
||||
"$pkgdir"/var/lib/thelounge/config.js
|
||||
|
||||
install -Dm755 "$srcdir"/$pkgname.initd \
|
||||
"$pkgdir"/etc/init.d/$pkgname
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
7695121a713a23688bc6f52dae2574bab1288eea930fd50d4dd85037233e9f23bd8e460980c69cdd14ea8648da4720d84e8196547b6a18e69d2f478b43d6e29a thelounge-4.4.1.tar.gz
|
||||
cbf80e23b0af8f0185699d6b03816c645c51b85fff7f163d3cd3d00296ed816b6ab01529b359fbfd549a79e8adb72bbc83bc7a389cf13e0afd50636ff79a138e no-version-test.patch
|
||||
f367d27ebcc412ff03c12ae98e50aeae5051fb5ffa9da6220f664c59993ed0e330b55b3b41fe941d546634901163d006e318891b4b886f6c49a93e0888fccd3e thelounge.initd
|
||||
212e468d6cedaa528b7fad534b8ba0e7a3d69137940cdabd22dbe34375491900d5b7d577550aa3b245ad7775488a90e308019db55ff15e8ede105c4b9c15b015 allow-https-for-connect-src.patch
|
||||
"
|
13
backports/thelounge/allow-https-for-connect-src.patch
Normal file
13
backports/thelounge/allow-https-for-connect-src.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
diff --git a/server/server.ts b/server/server.ts.orig
|
||||
index 7a1514e..5ecdea9 100644
|
||||
--- a/server/server.ts
|
||||
+++ b/server/server.ts.orig
|
||||
@@ -377,7 +377,7 @@ function addSecurityHeaders(req: Request, res: Response, next: NextFunction) {
|
||||
"default-src 'none'", // default to nothing
|
||||
"base-uri 'none'", // disallow <base>, has no fallback to default-src
|
||||
"form-action 'self'", // 'self' to fix saving passwords in Firefox, even though login is handled in javascript
|
||||
- "connect-src 'self' ws: wss:", // allow self for polling; websockets
|
||||
+ "connect-src 'self' ws: wss: https:", // allow self for polling; websockets
|
||||
"style-src 'self' https: 'unsafe-inline'", // allow inline due to use in irc hex colors
|
||||
"script-src 'self'", // javascript
|
||||
"worker-src 'self'", // service worker
|
19
backports/thelounge/no-version-test.patch
Normal file
19
backports/thelounge/no-version-test.patch
Normal file
|
@ -0,0 +1,19 @@
|
|||
diff --git a/test/src/helperTest.ts b/test/src/helperTest.ts
|
||||
index 2a8ddc8..22f0532 100644
|
||||
--- a/test/src/helperTest.ts
|
||||
+++ b/test/src/helperTest.ts
|
||||
@@ -40,14 +40,6 @@ describe("Helper", function () {
|
||||
describe("#getVersion()", function () {
|
||||
const version = Helper.getVersion();
|
||||
|
||||
- it("should mention it is served from source code", function () {
|
||||
- expect(version).to.include("source");
|
||||
- });
|
||||
-
|
||||
- it("should include a short Git SHA", function () {
|
||||
- expect(version).to.match(/\([0-9a-f]{7,11} /);
|
||||
- });
|
||||
-
|
||||
it("should include a valid semver version", function () {
|
||||
expect(version).to.match(/v[0-9]+\.[0-9]+\.[0-9]+/);
|
||||
});
|
14
backports/thelounge/thelounge.initd
Normal file
14
backports/thelounge/thelounge.initd
Normal file
|
@ -0,0 +1,14 @@
|
|||
#!/sbin/openrc-run
|
||||
|
||||
supervisor=supervise-daemon
|
||||
name="thelounge"
|
||||
command="/usr/bin/thelounge"
|
||||
command_args="start"
|
||||
command_user="thelounge:thelounge"
|
||||
command_background=true
|
||||
pidfile="/run/thelounge.pid"
|
||||
|
||||
depend() {
|
||||
need net localmount
|
||||
after firewall
|
||||
}
|
13
backports/thelounge/thelounge.post-install
Normal file
13
backports/thelounge/thelounge.post-install
Normal file
|
@ -0,0 +1,13 @@
|
|||
#!/bin/sh
|
||||
|
||||
cat >&2 <<-EOF
|
||||
*
|
||||
* The configuration is in /var/lib/thelounge/config.js.
|
||||
* To add users, use the cli:
|
||||
* doas -u thelounge thelounge ..
|
||||
* e.g.
|
||||
* doas -u thelounge thelounge add myuser
|
||||
*
|
||||
EOF
|
||||
|
||||
exit 0
|
6
backports/thelounge/thelounge.pre-install
Normal file
6
backports/thelounge/thelounge.pre-install
Normal file
|
@ -0,0 +1,6 @@
|
|||
#!/bin/sh
|
||||
|
||||
addgroup -S thelounge 2>/dev/null
|
||||
adduser -S -D -H -s /sbin/nologin -G thelounge -g thelounge thelounge 2>/dev/null
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,33 @@
|
|||
From 88fd460a63263d66173f1e0127b0f208577d7f4e Mon Sep 17 00:00:00 2001
|
||||
From: fieldOfView <aldo@fieldofview.com>
|
||||
Date: Sat, 20 May 2023 21:14:36 +0200
|
||||
Subject: [PATCH] Fix SimpleButton use of UM.ColorImage
|
||||
|
||||
Fixes https://github.com/Ultimaker/Cura/issues/15524
|
||||
---
|
||||
UM/Qt/qml/UM/SimpleButton.qml | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/UM/Qt/qml/UM/SimpleButton.qml b/UM/Qt/qml/UM/SimpleButton.qml
|
||||
index d3d398753c..d3bd0e8e14 100644
|
||||
--- a/UM/Qt/qml/UM/SimpleButton.qml
|
||||
+++ b/UM/Qt/qml/UM/SimpleButton.qml
|
||||
@@ -1,7 +1,8 @@
|
||||
-// Copyright (c) 2018 Ultimaker B.V.
|
||||
+// Copyright (c) 2023 Ultimaker B.V.
|
||||
// Uranium is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.1
|
||||
+import UM 1.5 as UM
|
||||
|
||||
MouseArea
|
||||
{
|
||||
@@ -27,7 +28,7 @@ MouseArea
|
||||
radius: 0
|
||||
}
|
||||
|
||||
- ColorImage
|
||||
+ UM.ColorImage
|
||||
{
|
||||
id: image
|
||||
|
62
backports/uranium/APKBUILD
Normal file
62
backports/uranium/APKBUILD
Normal file
|
@ -0,0 +1,62 @@
|
|||
# Contributor: Anjandev Momi <anjan@momi.ca>
|
||||
# Maintainer: Anjandev Momi <anjan@momi.ca>
|
||||
pkgname=uranium
|
||||
pkgver=5.2.2
|
||||
pkgrel=3
|
||||
pkgdesc="A Python framework for building Desktop applications"
|
||||
url="https://github.com/Ultimaker/Uranium"
|
||||
arch="noarch !armhf !riscv64" # armhf: no py3-qt5, rv64: no py3-shapely
|
||||
license="LGPL-3.0-or-later"
|
||||
depends="
|
||||
py3-cryptography
|
||||
py3-numpy
|
||||
py3-qt6
|
||||
py3-scipy
|
||||
python3
|
||||
"
|
||||
# add cura-binary-data to makedepends when packaged
|
||||
makedepends="samurai cmake doxygen gettext-dev graphviz"
|
||||
checkdepends="py3-pytest py3-pytest-benchmark py3-twisted"
|
||||
options="!check" # checks broken from 5.x onward
|
||||
source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Uranium/archive/refs/tags/$pkgver.tar.gz
|
||||
cmake.patch
|
||||
cmake-helpers.patch
|
||||
874_fix-simplebutton-use-of-um-colorimage.patch
|
||||
fix-logger-used-but-not-imported.patch
|
||||
qt-try-ints-then-bytes.patch
|
||||
"
|
||||
builddir="$srcdir/Uranium-$pkgver"
|
||||
|
||||
build() {
|
||||
if [ "$CBUILD" != "$CHOST" ]; then
|
||||
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
|
||||
fi
|
||||
cmake -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DCMAKE_BUILD_TYPE=MinSizeRel \
|
||||
-DGETTEXT_MSGINIT_EXECUTABLE=msginit \
|
||||
-DCURA_BINARY_DATA_DIRECTORY=/usr/share/cura \
|
||||
$CMAKE_CROSSOPTS
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
check() {
|
||||
# useless code style test with another dependency
|
||||
ctest -j $JOBS --output-on-failure -T Test
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
mkdir "$pkgdir"/usr/share/uranium/cmake
|
||||
mv "$pkgdir"/usr/share/cmake-*/Modules/* "$pkgdir"/usr/share/uranium/cmake/
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
a9c222400022e05b5c42c72843b024204a58f5d233805bdffa610a2d9cbd1873773868b049aabbe52c6e859f235ca5428fcdfdbb86651f428483999060611e10 uranium-5.2.2.tar.gz
|
||||
196a04164de288f5bffeebb73ace9390059dcffebaf40395368f413d1af2e2c668d85dd4c761ad226732540d41598235c2c368152cc157d2e89445ce27738c9b cmake.patch
|
||||
aa185ce3592036f045e3386266015cc08443c2e4f9b9a4c03c77c13525af98d68eaa3360e8858e0561417a826c73bf8a2b209bcad91d2cc16cce32fb0231fcf8 cmake-helpers.patch
|
||||
d0957ec427070f1b8ebe9257447402e09e3af7a89fe9b3c5967a4c40bfc753fab0ea8f0b0c49e17f5895abcd69888b59e4735d130cb47280207af1b8dbec1e71 874_fix-simplebutton-use-of-um-colorimage.patch
|
||||
b23701d49d6bc7b8e87e7720ca52b96b9b7dc0e20562c12832eb710aed38dad77f93c20413bd93bc1e2f8026a57af44a1aa06a90cf6488b6f887e3ba0b7ca51c fix-logger-used-but-not-imported.patch
|
||||
2a277b2e6e4acd701bc72924ec718127d8525192ef8e37a4d99d73b03b6c13462c2cb269704b5ee4c58203991cc3d3bd3ed32dadd5f153d5813eb2a946f02942 qt-try-ints-then-bytes.patch
|
||||
"
|
89
backports/uranium/cmake-helpers.patch
Normal file
89
backports/uranium/cmake-helpers.patch
Normal file
|
@ -0,0 +1,89 @@
|
|||
--- /dev/null
|
||||
+++ ./cmake/UraniumPluginInstall.cmake
|
||||
@@ -0,0 +1,86 @@
|
||||
+# Copyright (c) 2022 Ultimaker B.V.
|
||||
+# UraniumPluginInstall.cmake is released under the terms of the LGPLv3 or higher.
|
||||
+
|
||||
+#
|
||||
+# This module detects all plugins that need to be installed and adds them using the CMake install() command.
|
||||
+# It detects all plugin folder in the path "plugins/*" where there's a "plugin.json" in it.
|
||||
+#
|
||||
+# Plugins can be configured to NOT BE INSTALLED via the variable "UM_NO_INSTALL_PLUGINS" as a list of string in the
|
||||
+# form of "a;b;c" or "a,b,c". By default all plugins will be installed.
|
||||
+#
|
||||
+
|
||||
+# Options or configuration variables
|
||||
+set(UM_NO_INSTALL_PLUGINS "" CACHE STRING "A list of plugins that should not be installed, separated with ';' or ','.")
|
||||
+
|
||||
+file(GLOB_RECURSE _plugin_json_list ${CMAKE_SOURCE_DIR}/plugins/*/plugin.json)
|
||||
+list(LENGTH _plugin_json_list _plugin_json_list_len)
|
||||
+
|
||||
+# Sort the lists alphabetically so we can handle cases like this:
|
||||
+# - plugins/my_plugin/plugin.json
|
||||
+# - plugins/my_plugin/my_module/plugin.json
|
||||
+# In this case, only "plugins/my_plugin" should be added via install().
|
||||
+set(_no_install_plugin_list ${UM_NO_INSTALL_PLUGINS})
|
||||
+# Sanitize the string so the comparison will be case-insensitive.
|
||||
+string(STRIP "${_no_install_plugin_list}" _no_install_plugin_list)
|
||||
+string(TOLOWER "${_no_install_plugin_list}" _no_install_plugin_list)
|
||||
+
|
||||
+# WORKAROUND counterpart of what's in cura-build.
|
||||
+string(REPLACE "," ";" _no_install_plugin_list "${_no_install_plugin_list}")
|
||||
+
|
||||
+list(LENGTH _no_install_plugin_list _no_install_plugin_list_len)
|
||||
+
|
||||
+if(_no_install_plugin_list_len GREATER 0)
|
||||
+ list(SORT _no_install_plugin_list)
|
||||
+endif()
|
||||
+if(_plugin_json_list_len GREATER 0)
|
||||
+ list(SORT _plugin_json_list)
|
||||
+endif()
|
||||
+
|
||||
+# Check all plugin directories and add them via install() if needed.
|
||||
+set(_install_plugin_list "")
|
||||
+foreach(_plugin_json_path ${_plugin_json_list})
|
||||
+ get_filename_component(_plugin_dir ${_plugin_json_path} DIRECTORY)
|
||||
+ file(RELATIVE_PATH _rel_plugin_dir ${CMAKE_CURRENT_SOURCE_DIR} ${_plugin_dir})
|
||||
+ get_filename_component(_plugin_dir_name ${_plugin_dir} NAME)
|
||||
+
|
||||
+ # Make plugin name comparison case-insensitive
|
||||
+ string(TOLOWER "${_plugin_dir_name}" _plugin_dir_name_lowercase)
|
||||
+
|
||||
+ # Check if this plugin needs to be skipped for installation
|
||||
+ set(_add_plugin ON) # Indicates if this plugin should be added to the build or not.
|
||||
+ set(_is_no_install_plugin OFF) # If this plugin will not be added, this indicates if it's because the plugin is
|
||||
+ # specified in the NO_INSTALL_PLUGINS list.
|
||||
+ if(_no_install_plugin_list)
|
||||
+ if("${_plugin_dir_name_lowercase}" IN_LIST _no_install_plugin_list)
|
||||
+ set(_add_plugin OFF)
|
||||
+ set(_is_no_install_plugin ON)
|
||||
+ endif()
|
||||
+ endif()
|
||||
+
|
||||
+ # Make sure this is not a subdirectory in a plugin that's already in the install list
|
||||
+ if(_add_plugin)
|
||||
+ foreach(_known_install_plugin_dir ${_install_plugin_list})
|
||||
+ if(_plugin_dir MATCHES "${_known_install_plugin_dir}.+")
|
||||
+ set(_add_plugin OFF)
|
||||
+ break()
|
||||
+ endif()
|
||||
+ endforeach()
|
||||
+ endif()
|
||||
+
|
||||
+ if(_add_plugin)
|
||||
+ message(STATUS "[+] PLUGIN TO INSTALL: ${_rel_plugin_dir}")
|
||||
+ get_filename_component(_rel_plugin_parent_dir ${_rel_plugin_dir} DIRECTORY)
|
||||
+ install(DIRECTORY ${_rel_plugin_dir}
|
||||
+ DESTINATION lib${LIB_SUFFIX}/uranium/${_rel_plugin_parent_dir}
|
||||
+ PATTERN "__pycache__" EXCLUDE
|
||||
+ PATTERN "*.qmlc" EXCLUDE
|
||||
+ )
|
||||
+ list(APPEND _install_plugin_list ${_plugin_dir})
|
||||
+ elseif(_is_no_install_plugin)
|
||||
+ message(STATUS "[-] PLUGIN TO REMOVE : ${_rel_plugin_dir}")
|
||||
+ execute_process(COMMAND ${Python_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/mod_bundled_packages_json.py
|
||||
+ -d ${CMAKE_CURRENT_SOURCE_DIR}/resources/bundled_packages
|
||||
+ ${_plugin_dir_name}
|
||||
+ RESULT_VARIABLE _mod_json_result)
|
||||
+ endif()
|
||||
+endforeach()
|
16
backports/uranium/cmake.patch
Normal file
16
backports/uranium/cmake.patch
Normal file
|
@ -0,0 +1,16 @@
|
|||
--- ./CMakeLists.txt.orig
|
||||
+++ ./CMakeLists.txt
|
||||
@@ -19,9 +19,12 @@
|
||||
# Build Translations
|
||||
CREATE_TRANSLATION_TARGETS()
|
||||
|
||||
+find_package(Python REQUIRED COMPONENTS Interpreter)
|
||||
|
||||
-install(DIRECTORY UM DESTINATION "${Python_SITELIB_LOCAL}")
|
||||
+install(DIRECTORY UM DESTINATION "${Python_SITELIB}")
|
||||
|
||||
install(FILES ${CMAKE_SOURCE_DIR}/cmake/UraniumTranslationTools.cmake
|
||||
DESTINATION ${CMAKE_INSTALL_DATADIR}/cmake-${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}/Modules/ )
|
||||
install(DIRECTORY resources DESTINATION ${CMAKE_INSTALL_DATADIR}/uranium)
|
||||
+
|
||||
+include(UraniumPluginInstall)
|
12
backports/uranium/fix-logger-used-but-not-imported.patch
Normal file
12
backports/uranium/fix-logger-used-but-not-imported.patch
Normal file
|
@ -0,0 +1,12 @@
|
|||
diff --git a/UM/View/SelectionPass.py.orig b/UM/View/SelectionPass.py
|
||||
index 945b789..ef042a5 100644
|
||||
--- a/UM/View/SelectionPass.py.orig
|
||||
+++ b/UM/View/SelectionPass.py
|
||||
@@ -5,6 +5,7 @@ import enum
|
||||
import random
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
+from UM.Logger import Logger
|
||||
from UM.Resources import Resources
|
||||
from UM.Application import Application
|
||||
|
94
backports/uranium/qt-try-ints-then-bytes.patch
Normal file
94
backports/uranium/qt-try-ints-then-bytes.patch
Normal file
|
@ -0,0 +1,94 @@
|
|||
diff --git a/UM/View/RenderBatch.py.orig b/UM/View/RenderBatch.py
|
||||
index 6deeeb1..5f1eda5 100644
|
||||
--- a/UM/View/RenderBatch.py.orig
|
||||
+++ b/UM/View/RenderBatch.py
|
||||
@@ -186,10 +186,24 @@ class RenderBatch:
|
||||
|
||||
if self._render_type == self.RenderType.Solid:
|
||||
self._gl.glEnable(self._gl.GL_DEPTH_TEST)
|
||||
- self._gl.glDepthMask(self._gl.GL_TRUE)
|
||||
+ try:
|
||||
+ self._gl.glDepthMask(self._gl.GL_TRUE)
|
||||
+ except:
|
||||
+ Logger.log("w", "glDepthMask does not like ints, trying bytes...")
|
||||
+ try:
|
||||
+ self._gl.glDepthMask(b'1')
|
||||
+ except:
|
||||
+ Logger.log("e", "glDepthMask does not like ints or bytes, no idea what it wants")
|
||||
elif self._render_type == self.RenderType.Transparent:
|
||||
self._gl.glEnable(self._gl.GL_DEPTH_TEST)
|
||||
- self._gl.glDepthMask(self._gl.GL_FALSE)
|
||||
+ try:
|
||||
+ self._gl.glDepthMask(self._gl.GL_FALSE)
|
||||
+ except:
|
||||
+ Logger.log("w", "glDepthMask does not like ints, trying bytes...")
|
||||
+ try:
|
||||
+ self._gl.glDepthMask(b'1')
|
||||
+ except:
|
||||
+ Logger.log("e", "glDepthMask does not like ints or bytes, no idea what it wants")
|
||||
elif self._render_type == self.RenderType.Overlay:
|
||||
self._gl.glDisable(self._gl.GL_DEPTH_TEST)
|
||||
|
||||
diff --git a/UM/View/RenderPass.py.orig b/UM/View/RenderPass.py
|
||||
index 8068ddf..8cb4f67 100644
|
||||
--- a/UM/View/RenderPass.py.orig
|
||||
+++ b/UM/View/RenderPass.py
|
||||
@@ -93,8 +93,22 @@ class RenderPass:
|
||||
self._fbo.bind()
|
||||
|
||||
# Ensure we can actually write to the relevant FBO components.
|
||||
- self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE,self._gl.GL_TRUE, self._gl.GL_TRUE)
|
||||
- self._gl.glDepthMask(self._gl.GL_TRUE)
|
||||
+ try:
|
||||
+ self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE,self._gl.GL_TRUE, self._gl.GL_TRUE)
|
||||
+ except:
|
||||
+ Logger.log("w", "glColorMask does not like ints, trying bytes...")
|
||||
+ try:
|
||||
+ self._gl.glColorMask(b'1', b'1',b'1', b'1')
|
||||
+ except:
|
||||
+ Logger.log("e", "glColorMask does not like ints or bytes, no idea what it wants")
|
||||
+ try:
|
||||
+ self._gl.glDepthMask(self._gl.GL_TRUE)
|
||||
+ except:
|
||||
+ Logger.log("w", "glDepthMask does not like ints, trying bytes...")
|
||||
+ try:
|
||||
+ self._gl.glDepthMask(b'1')
|
||||
+ except:
|
||||
+ Logger.log("e", "glDepthMask does not like ints or bytes, no idea what it wants")
|
||||
|
||||
self._gl.glClear(self._gl.GL_COLOR_BUFFER_BIT | self._gl.GL_DEPTH_BUFFER_BIT)
|
||||
|
||||
diff --git a/UM/View/SelectionPass.py.orig b/UM/View/SelectionPass.py
|
||||
index ef042a5..c28fe4f 100644
|
||||
--- a/UM/View/SelectionPass.py.orig
|
||||
+++ b/UM/View/SelectionPass.py
|
||||
@@ -110,13 +110,27 @@ class SelectionPass(RenderPass):
|
||||
if selectable_objects:
|
||||
batch.render(self._scene.getActiveCamera())
|
||||
|
||||
- self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_FALSE)
|
||||
+ try:
|
||||
+ self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_FALSE)
|
||||
+ except:
|
||||
+ Logger.log("w", "glColorMask does not like ints, trying bytes...")
|
||||
+ try:
|
||||
+ self._gl.glColorMask(b'1', b'1', b'1', b'0')
|
||||
+ except:
|
||||
+ Logger.log("e", "glColorMask does not like ints or bytes, no idea what it wants")
|
||||
self._gl.glDisable(self._gl.GL_DEPTH_TEST)
|
||||
|
||||
tool_handle.render(self._scene.getActiveCamera())
|
||||
|
||||
self._gl.glEnable(self._gl.GL_DEPTH_TEST)
|
||||
- self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE)
|
||||
+ try:
|
||||
+ self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE)
|
||||
+ except:
|
||||
+ Logger.log("w", "glColorMask does not like ints, trying bytes...")
|
||||
+ try:
|
||||
+ self._gl.glColorMask(b'1', b'1', b'1', b'1')
|
||||
+ except:
|
||||
+ Logger.log("e", "glColorMask does not like ints or bytes, no idea what it wants")
|
||||
|
||||
self.release()
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
|
||||
pkgname=authentik
|
||||
pkgver=2023.10.4
|
||||
pkgver=2023.10.7
|
||||
pkgrel=0
|
||||
pkgdesc="An open-source Identity Provider focused on flexibility and versatility"
|
||||
url="https://github.com/goauthentik/authentik"
|
||||
|
@ -32,6 +32,8 @@ depends="
|
|||
py3-celery
|
||||
py3-certifi
|
||||
py3-cffi
|
||||
py3-channels
|
||||
py3-channels_redis
|
||||
py3-charset-normalizer
|
||||
py3-click
|
||||
py3-click-didyoumean
|
||||
|
@ -50,9 +52,6 @@ depends="
|
|||
py3-deprecated
|
||||
py3-dnspython
|
||||
py3-django
|
||||
py3-django-channels
|
||||
py3-django-channels-redis
|
||||
py3-django-drf-spectacular
|
||||
py3-django-filter
|
||||
py3-django-guardian
|
||||
py3-django-model-utils
|
||||
|
@ -64,7 +63,8 @@ depends="
|
|||
py3-docker-py
|
||||
py3-dotenv
|
||||
py3-dumb-init
|
||||
py3-duo-client
|
||||
py3-duo_client
|
||||
py3-drf-spectacular
|
||||
py3-email-validator
|
||||
py3-facebook-sdk
|
||||
py3-flower
|
||||
|
@ -236,7 +236,7 @@ package() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
26e69786c377b5fb24c733a6d3855f7c05f1821e66935ef1bf24964f50b09967895d5969ccd3d77e51a159879f0a32fbb3731dc28334346afc80675764624f35 authentik-2023.10.4.tar.gz
|
||||
73d11fa0868b81a714ffd3da1869ee58387300863ec6951ee37d0ed332681f669153cfae8643f54fb5b4af8a95078de240d5636854f046b9d606f01ad6e71569 authentik-2023.10.7.tar.gz
|
||||
4defb4fe3a4230f4aa517fbecd5e5b8bcef2a64e1b40615660ae9eec33597310a09df5e126f4d39ce7764bd1716c0a7040637699135c103cbc1879593c6c06f1 authentik.openrc
|
||||
5d7f28bf5a9f358a0fc3634b2bac6d070c276c3f8181d26fa7e94a17503a4d54556bf7c3207ccd6cb924b81754ed965795d5e2a8aa1af409fd9e32d390ec4cf5 authentik-worker.openrc
|
||||
351e6920d987861f8bf0d7ab2f942db716a8dbdad1f690ac662a6ef29ac0fd46cf817cf557de08f1c024703503d36bc8b46f0d9eb1ecaeb399dce4c3bb527d17 authentik-ldap.openrc
|
||||
|
|
|
@ -1,671 +0,0 @@
|
|||
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
|
||||
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
|
||||
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
|
||||
pkgname=firefox-esr
|
||||
pkgver=102.10.0
|
||||
# Date of release, YY-MM-DD for metainfo file (see package())
|
||||
_releasedate=2023-04-11
|
||||
pkgrel=5
|
||||
pkgdesc="Firefox web browser - Extended Support Release"
|
||||
url="https://www.mozilla.org/en-US/firefox/organizations/"
|
||||
# s390x and riscv64: blocked by rust and cargo
|
||||
# armhf: build failure on armhf due to wasm
|
||||
# fix later
|
||||
#arch="x86_64 armv7 aarch64 x86 ppc64le"
|
||||
license="GPL-3.0-only AND LGPL-2.1-only AND LGPL-3.0-only AND MPL-2.0"
|
||||
install="$pkgname.post-upgrade"
|
||||
depends="
|
||||
ffmpeg-libavcodec
|
||||
"
|
||||
makedepends="
|
||||
alsa-lib-dev
|
||||
automake
|
||||
bsd-compat-headers
|
||||
cargo
|
||||
cbindgen
|
||||
clang
|
||||
dbus-glib-dev
|
||||
gettext
|
||||
gtk+3.0-dev
|
||||
hunspell-dev
|
||||
icu-dev>=69.1
|
||||
libevent-dev
|
||||
libffi-dev
|
||||
libjpeg-turbo-dev
|
||||
libnotify-dev
|
||||
libogg-dev
|
||||
libtheora-dev
|
||||
libtool
|
||||
libvorbis-dev
|
||||
libvpx-dev
|
||||
libwebp-dev
|
||||
libxcomposite-dev
|
||||
libxt-dev
|
||||
lld
|
||||
llvm-dev
|
||||
m4
|
||||
mesa-dev
|
||||
nasm
|
||||
nodejs
|
||||
nspr-dev
|
||||
nss-dev
|
||||
pipewire-dev
|
||||
pulseaudio-dev
|
||||
py3-psutil
|
||||
py3-zstandard
|
||||
python3
|
||||
sed
|
||||
wasi-sdk
|
||||
wireless-tools-dev
|
||||
zip
|
||||
"
|
||||
source="https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.xz
|
||||
allow-custom-rust-vendor.patch
|
||||
avoid-redefinition.patch
|
||||
bindgen.patch
|
||||
disable-moz-stackwalk.patch
|
||||
esr-metainfo.patch
|
||||
firefox-esr-ffmpeg6.patch::https://dev.alpinelinux.org/archive/firefoxies/firefox-esr-ffmpeg6.patch
|
||||
ffmpeg6-fixup.patch
|
||||
fix-neon-aom.patch
|
||||
fix-fortify-system-wrappers.patch
|
||||
fix-rust-target.patch
|
||||
fix-webrtc-glibcisms.patch
|
||||
gcc13.patch
|
||||
mallinfo.patch
|
||||
python-deps.patch
|
||||
sandbox-fork.patch
|
||||
sandbox-largefile.patch
|
||||
sandbox-sched_setscheduler.patch
|
||||
zstandard.patch
|
||||
|
||||
stab.h
|
||||
|
||||
firefox.desktop
|
||||
mozilla-location.keys
|
||||
vendor-prefs.js
|
||||
"
|
||||
|
||||
builddir="$srcdir/firefox-$pkgver"
|
||||
_mozappdir=/usr/lib/firefox-esr
|
||||
|
||||
# help our shared-object scanner to find the libs
|
||||
ldpath="$_mozappdir"
|
||||
|
||||
# secfixes:
|
||||
# 102.1.0-r0:
|
||||
# - CVE-2022-2505
|
||||
# - CVE-2022-36314
|
||||
# - CVE-2022-36318
|
||||
# - CVE-2022-36319
|
||||
# 91.11.0-r0:
|
||||
# - CVE-2022-2200
|
||||
# - CVE-2022-31744
|
||||
# - CVE-2022-34468
|
||||
# - CVE-2022-34470
|
||||
# - CVE-2022-34472
|
||||
# - CVE-2022-34478
|
||||
# - CVE-2022-34479
|
||||
# - CVE-2022-34481
|
||||
# - CVE-2022-34484
|
||||
# 91.10.0-r0:
|
||||
# - CVE-2022-31736
|
||||
# - CVE-2022-31737
|
||||
# - CVE-2022-31738
|
||||
# - CVE-2022-31739
|
||||
# - CVE-2022-31740
|
||||
# - CVE-2022-31741
|
||||
# - CVE-2022-31742
|
||||
# - CVE-2022-31747
|
||||
# 91.9.1-r0:
|
||||
# - CVE-2022-1529
|
||||
# - CVE-2022-1802
|
||||
# 91.9.0-r0:
|
||||
# - CVE-2022-29909
|
||||
# - CVE-2022-29911
|
||||
# - CVE-2022-29912
|
||||
# - CVE-2022-29914
|
||||
# - CVE-2022-29916
|
||||
# - CVE-2022-29917
|
||||
# 91.8.0-r0:
|
||||
# - CVE-2022-1097
|
||||
# - CVE-2022-1196
|
||||
# - CVE-2022-24713
|
||||
# - CVE-2022-28281
|
||||
# - CVE-2022-28282
|
||||
# - CVE-2022-28285
|
||||
# - CVE-2022-28286
|
||||
# - CVE-2022-28289
|
||||
# 91.7.0-r0:
|
||||
# - CVE-2022-26381
|
||||
# - CVE-2022-26383
|
||||
# - CVE-2022-26384
|
||||
# - CVE-2022-26386
|
||||
# - CVE-2022-26387
|
||||
# 91.6.1-r0:
|
||||
# - CVE-2022-26485
|
||||
# - CVE-2022-26486
|
||||
# 91.6.0-r0:
|
||||
# - CVE-2022-22754
|
||||
# - CVE-2022-22756
|
||||
# - CVE-2022-22759
|
||||
# - CVE-2022-22760
|
||||
# - CVE-2022-22761
|
||||
# - CVE-2022-22763
|
||||
# - CVE-2022-22764
|
||||
# 91.5.0-r0:
|
||||
# - CVE-2021-4140
|
||||
# - CVE-2022-22737
|
||||
# - CVE-2022-22738
|
||||
# - CVE-2022-22739
|
||||
# - CVE-2022-22740
|
||||
# - CVE-2022-22741
|
||||
# - CVE-2022-22742
|
||||
# - CVE-2022-22743
|
||||
# - CVE-2022-22744
|
||||
# - CVE-2022-22745
|
||||
# - CVE-2022-22746
|
||||
# - CVE-2022-22747
|
||||
# - CVE-2022-22748
|
||||
# - CVE-2022-22751
|
||||
# 91.4.0-r0:
|
||||
# - CVE-2021-43536
|
||||
# - CVE-2021-43537
|
||||
# - CVE-2021-43538
|
||||
# - CVE-2021-43539
|
||||
# - CVE-2021-43541
|
||||
# - CVE-2021-43542
|
||||
# - CVE-2021-43543
|
||||
# - CVE-2021-43545
|
||||
# - CVE-2021-43546
|
||||
# 91.3.0-r0:
|
||||
# - CVE-2021-38503
|
||||
# - CVE-2021-38504
|
||||
# - CVE-2021-38505
|
||||
# - CVE-2021-38506
|
||||
# - CVE-2021-38507
|
||||
# - CVE-2021-38508
|
||||
# - CVE-2021-38509
|
||||
# - CVE-2021-38510
|
||||
# 91.2.0-r0:
|
||||
# - CVE-2021-32810
|
||||
# - CVE-2021-38492
|
||||
# - CVE-2021-38493
|
||||
# - CVE-2021-38495
|
||||
# - CVE-2021-38496
|
||||
# - CVE-2021-38497
|
||||
# - CVE-2021-38498
|
||||
# - CVE-2021-38500
|
||||
# - CVE-2021-38501
|
||||
# 78.13.0-r0:
|
||||
# - CVE-2021-29980
|
||||
# - CVE-2021-29984
|
||||
# - CVE-2021-29985
|
||||
# - CVE-2021-29986
|
||||
# - CVE-2021-29988
|
||||
# - CVE-2021-29989
|
||||
# 78.12.0-r0:
|
||||
# - CVE-2021-29970
|
||||
# - CVE-2021-29976
|
||||
# - CVE-2021-30547
|
||||
# 78.11.0-r0:
|
||||
# - CVE-2021-29967
|
||||
# 78.10.0-r0:
|
||||
# - CVE-2021-23961
|
||||
# - CVE-2021-23994
|
||||
# - CVE-2021-23995
|
||||
# - CVE-2021-23998
|
||||
# - CVE-2021-23999
|
||||
# - CVE-2021-24002
|
||||
# - CVE-2021-29945
|
||||
# - CVE-2021-29946
|
||||
# 78.9.0-r0:
|
||||
# - CVE-2021-23981
|
||||
# - CVE-2021-23982
|
||||
# - CVE-2021-23984
|
||||
# - CVE-2021-23987
|
||||
# 78.8.0-r0:
|
||||
# - CVE-2021-23968
|
||||
# - CVE-2021-23969
|
||||
# - CVE-2021-23973
|
||||
# - CVE-2021-23978
|
||||
# 78.7.0-r0:
|
||||
# - CVE-2020-26976
|
||||
# - CVE-2021-23953
|
||||
# - CVE-2021-23954
|
||||
# - CVE-2021-23960
|
||||
# - CVE-2021-23964
|
||||
# 78.6.1-r0:
|
||||
# - CVE-2020-16044
|
||||
# 78.6.0-r0:
|
||||
# - CVE-2020-16042
|
||||
# - CVE-2020-26971
|
||||
# - CVE-2020-26973
|
||||
# - CVE-2020-26974
|
||||
# - CVE-2020-26978
|
||||
# - CVE-2020-35111
|
||||
# - CVE-2020-35112
|
||||
# - CVE-2020-35113
|
||||
# 78.5.0-r0:
|
||||
# - CVE-2020-15683
|
||||
# - CVE-2020-15969
|
||||
# - CVE-2020-15999
|
||||
# - CVE-2020-16012
|
||||
# - CVE-2020-26950
|
||||
# - CVE-2020-26951
|
||||
# - CVE-2020-26953
|
||||
# - CVE-2020-26956
|
||||
# - CVE-2020-26958
|
||||
# - CVE-2020-26959
|
||||
# - CVE-2020-26960
|
||||
# - CVE-2020-26961
|
||||
# - CVE-2020-26965
|
||||
# - CVE-2020-26966
|
||||
# - CVE-2020-26968
|
||||
# 78.3.0-r0:
|
||||
# - CVE-2020-15673
|
||||
# - CVE-2020-15676
|
||||
# - CVE-2020-15677
|
||||
# - CVE-2020-15678
|
||||
# 78.2.0-r0:
|
||||
# - CVE-2020-15663
|
||||
# - CVE-2020-15664
|
||||
# - CVE-2020-15670
|
||||
# 78.1.0-r0:
|
||||
# - CVE-2020-15652
|
||||
# - CVE-2020-15653
|
||||
# - CVE-2020-15654
|
||||
# - CVE-2020-15655
|
||||
# - CVE-2020-15656
|
||||
# - CVE-2020-15657
|
||||
# - CVE-2020-15658
|
||||
# - CVE-2020-15659
|
||||
# - CVE-2020-6463
|
||||
# - CVE-2020-6514
|
||||
# 68.10.0-r0:
|
||||
# - CVE-2020-12417
|
||||
# - CVE-2020-12418
|
||||
# - CVE-2020-12419
|
||||
# - CVE-2020-12420
|
||||
# - CVE-2020-12421
|
||||
# 68.9.0-r0:
|
||||
# - CVE-2020-12399
|
||||
# - CVE-2020-12405
|
||||
# - CVE-2020-12406
|
||||
# - CVE-2020-12410
|
||||
# 68.8.0-r0:
|
||||
# - CVE-2020-12387
|
||||
# - CVE-2020-12388
|
||||
# - CVE-2020-12389
|
||||
# - CVE-2020-12392
|
||||
# - CVE-2020-12393
|
||||
# - CVE-2020-12395
|
||||
# - CVE-2020-6831
|
||||
# 68.7.0-r0:
|
||||
# - CVE-2020-6821
|
||||
# - CVE-2020-6822
|
||||
# - CVE-2020-6825
|
||||
# 68.6.1-r0:
|
||||
# - CVE-2020-6819
|
||||
# - CVE-2020-6820
|
||||
# 68.6.0-r0:
|
||||
# - CVE-2019-20503
|
||||
# - CVE-2020-6805
|
||||
# - CVE-2020-6806
|
||||
# - CVE-2020-6807
|
||||
# - CVE-2020-6811
|
||||
# - CVE-2020-6812
|
||||
# - CVE-2020-6814
|
||||
# 68.5.0-r0:
|
||||
# - CVE-2020-6796
|
||||
# - CVE-2020-6797
|
||||
# - CVE-2020-6798
|
||||
# - CVE-2020-6799
|
||||
# - CVE-2020-6800
|
||||
# 68.4.1-r0:
|
||||
# - CVE-2019-17016
|
||||
# - CVE-2019-17022
|
||||
# - CVE-2019-17024
|
||||
# - CVE-2019-17026
|
||||
# 68.3.0-r0:
|
||||
# - CVE-2019-17005
|
||||
# - CVE-2019-17008
|
||||
# - CVE-2019-17009
|
||||
# - CVE-2019-17010
|
||||
# - CVE-2019-17011
|
||||
# - CVE-2019-17012
|
||||
# 68.2.0-r0:
|
||||
# - CVE-2019-11757
|
||||
# - CVE-2019-11758
|
||||
# - CVE-2019-11759
|
||||
# - CVE-2019-11760
|
||||
# - CVE-2019-11761
|
||||
# - CVE-2019-11762
|
||||
# - CVE-2019-11763
|
||||
# - CVE-2019-11764
|
||||
# - CVE-2019-15903
|
||||
# 68.1.0-r0:
|
||||
# - CVE-2019-9812
|
||||
# - CVE-2019-11740
|
||||
# - CVE-2019-11742
|
||||
# - CVE-2019-11743
|
||||
# - CVE-2019-11744
|
||||
# - CVE-2019-11746
|
||||
# - CVE-2019-11752
|
||||
# 68.0.2-r0:
|
||||
# - CVE-2019-11733
|
||||
# 68.0-r0:
|
||||
# - CVE-2019-11709
|
||||
# - CVE-2019-11711
|
||||
# - CVE-2019-11712
|
||||
# - CVE-2019-11713
|
||||
# - CVE-2019-11715
|
||||
# - CVE-2019-11717
|
||||
# - CVE-2019-11719
|
||||
# - CVE-2019-11729
|
||||
# - CVE-2019-11730
|
||||
# - CVE-2019-9811
|
||||
# 60.7.2-r0:
|
||||
# - CVE-2019-11708
|
||||
# 60.7.1-r0:
|
||||
# - CVE-2019-11707
|
||||
# 60.7.0-r0:
|
||||
# - CVE-2019-9815
|
||||
# - CVE-2019-9816
|
||||
# - CVE-2019-9817
|
||||
# - CVE-2019-9818
|
||||
# - CVE-2019-9819
|
||||
# - CVE-2019-9820
|
||||
# - CVE-2019-11691
|
||||
# - CVE-2019-11692
|
||||
# - CVE-2019-11693
|
||||
# - CVE-2019-7317
|
||||
# - CVE-2019-9797
|
||||
# - CVE-2018-18511
|
||||
# - CVE-2019-11694
|
||||
# - CVE-2019-11698
|
||||
# - CVE-2019-5798
|
||||
# - CVE-2019-9800
|
||||
# 60.6.1-r0:
|
||||
# - CVE-2019-9810
|
||||
# - CVE-2019-9813
|
||||
# - CVE-2019-9790
|
||||
# - CVE-2019-9791
|
||||
# - CVE-2019-9792
|
||||
# - CVE-2019-9793
|
||||
# - CVE-2019-9794
|
||||
# - CVE-2019-9795
|
||||
# - CVE-2019-9796
|
||||
# - CVE-2019-9801
|
||||
# - CVE-2018-18506
|
||||
# - CVE-2019-9788
|
||||
# 60.5.2-r0:
|
||||
# - CVE-2019-5785
|
||||
# - CVE-2018-18335
|
||||
# - CVE-2018-18356
|
||||
# 60.5.0-r0:
|
||||
# - CVE-2018-18500
|
||||
# - CVE-2018-18505
|
||||
# - CVE-2018-18501
|
||||
# 52.6.0-r0:
|
||||
# - CVE-2018-5089
|
||||
# - CVE-2018-5091
|
||||
# - CVE-2018-5095
|
||||
# - CVE-2018-5096
|
||||
# - CVE-2018-5097
|
||||
# - CVE-2018-5098
|
||||
# - CVE-2018-5099
|
||||
# - CVE-2018-5102
|
||||
# - CVE-2018-5103
|
||||
# - CVE-2018-5104
|
||||
# - CVE-2018-5117
|
||||
# 52.5.2-r0:
|
||||
# - CVE-2017-7843
|
||||
|
||||
# we need this because cargo verifies checksums of all files in vendor
|
||||
# crates when it builds and gives us no way to override or update the
|
||||
# file sanely... so just clear out the file list
|
||||
_clear_vendor_checksums() {
|
||||
sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json
|
||||
}
|
||||
|
||||
export SHELL=/bin/sh
|
||||
export BUILD_OFFICIAL=1
|
||||
export MOZILLA_OFFICIAL=1
|
||||
export USE_SHORT_LIBNAME=1
|
||||
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
|
||||
export MOZ_APP_PROFILE="mozilla/firefox"
|
||||
export MOZ_APP_REMOTINGNAME=firefox-esr
|
||||
export MOZBUILD_STATE_PATH="$srcdir"/mozbuild
|
||||
# disable desktop notifications
|
||||
export MOZ_NOSPAM=1
|
||||
# Find our triplet JSON
|
||||
export RUST_TARGET="$CTARGET"
|
||||
|
||||
# Build with Clang, takes less RAM
|
||||
export CC="clang"
|
||||
export CXX="clang++"
|
||||
|
||||
# set rpath so linker finds the libs
|
||||
export LDFLAGS="$LDFLAGS -Wl,-rpath,$_mozappdir"
|
||||
|
||||
# let firefox do this itself.
|
||||
unset CARGO_PROFILE_RELEASE_OPT_LEVEL
|
||||
unset CARGO_PROFILE_RELEASE_LTO
|
||||
|
||||
export CFLAGS="$CFLAGS -O2"
|
||||
export CXXFLAGS="$CXXFLAGS -O2 -Wno-deprecated-builtins"
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
cp "$srcdir"/stab.h toolkit/crashreporter/google-breakpad/src/
|
||||
|
||||
base64 -d "$srcdir"/mozilla-location.keys > "$builddir"/mozilla-api-key
|
||||
|
||||
_clear_vendor_checksums audio_thread_priority
|
||||
_clear_vendor_checksums target-lexicon-0.9.0
|
||||
_clear_vendor_checksums packed_simd_2
|
||||
_clear_vendor_checksums bindgen
|
||||
|
||||
# webrtc does not build on these
|
||||
case "$CARCH" in
|
||||
ppc64le)
|
||||
local webrtc_config="ac_add_options --disable-webrtc"
|
||||
;;
|
||||
esac
|
||||
case "$CARCH" in
|
||||
armv7)
|
||||
# broken here
|
||||
local rust_simd="ac_add_options --disable-rust-simd"
|
||||
;;
|
||||
*)
|
||||
local rust_simd="ac_add_options --enable-rust-simd"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$CARCH" in
|
||||
aarch64|arm*|x86*)
|
||||
# disable-elf-hack: exists only on aarch64, arm*, x86, x86_64
|
||||
local arch_config="ac_add_options --disable-elf-hack"
|
||||
;;
|
||||
esac
|
||||
|
||||
# sandbox only supported here
|
||||
case "$CARCH" in
|
||||
x86*|armv7|aarch64)
|
||||
local sandbox="ac_add_options --enable-sandbox"
|
||||
;;
|
||||
*)
|
||||
local sandbox="ac_add_options --disable-sandbox"
|
||||
;;
|
||||
esac
|
||||
|
||||
cat > base-mozconfig <<-EOF
|
||||
# disable unwanted things
|
||||
ac_add_options --disable-bootstrap
|
||||
ac_add_options --disable-cargo-incremental
|
||||
ac_add_options --disable-crashreporter
|
||||
ac_add_options --disable-debug
|
||||
ac_add_options --disable-debug-symbols
|
||||
ac_add_options --disable-install-strip
|
||||
ac_add_options --disable-jemalloc
|
||||
ac_add_options --disable-strip
|
||||
ac_add_options --disable-tests
|
||||
ac_add_options --disable-updater
|
||||
|
||||
# features
|
||||
ac_add_options --enable-alsa
|
||||
ac_add_options --enable-dbus
|
||||
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
|
||||
ac_add_options --enable-ffmpeg
|
||||
ac_add_options --enable-hardening
|
||||
ac_add_options --enable-linker=lld
|
||||
ac_add_options --enable-necko-wifi
|
||||
ac_add_options --enable-official-branding
|
||||
ac_add_options --enable-optimize="$CFLAGS"
|
||||
ac_add_options --enable-pulseaudio
|
||||
ac_add_options --enable-release
|
||||
ac_add_options --enable-update-channel=release
|
||||
|
||||
# system libs
|
||||
ac_add_options --enable-system-pixman
|
||||
ac_add_options --with-system-ffi
|
||||
ac_add_options --with-system-icu
|
||||
ac_add_options --with-system-jpeg
|
||||
ac_add_options --with-system-libevent
|
||||
ac_add_options --with-system-libvpx
|
||||
ac_add_options --with-system-nspr
|
||||
ac_add_options --with-system-nss
|
||||
ac_add_options --with-system-png
|
||||
ac_add_options --with-system-webp
|
||||
ac_add_options --with-system-zlib
|
||||
|
||||
# misc
|
||||
ac_add_options --allow-addon-sideload
|
||||
ac_add_options --prefix=/usr
|
||||
ac_add_options --with-app-name=firefox-esr
|
||||
ac_add_options --with-distribution-id=org.alpinelinux
|
||||
ac_add_options --with-libclang-path=/usr/lib
|
||||
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
|
||||
ac_add_options --host=$CHOST
|
||||
ac_add_options --target=$CTARGET
|
||||
|
||||
# objdir
|
||||
mk_add_options MOZ_OBJDIR="$builddir/obj"
|
||||
|
||||
mk_add_options RUSTFLAGS="$RUSTFLAGS"
|
||||
|
||||
# keys
|
||||
# these are for alpine linux use only
|
||||
ac_add_options --with-mozilla-api-keyfile="$builddir/mozilla-api-key"
|
||||
|
||||
$arch_config
|
||||
$rust_simd
|
||||
$sandbox
|
||||
$webrtc_config
|
||||
EOF
|
||||
}
|
||||
|
||||
build() {
|
||||
cat > .mozconfig base-mozconfig
|
||||
|
||||
export MOZ_BUILD_DATE=$(date ${SOURCE_DATE_EPOCH:+ -d@${SOURCE_DATE_EPOCH}} "+%Y%m%d%H%M%S")
|
||||
|
||||
# for lto
|
||||
ulimit -n 4096
|
||||
|
||||
# can't be set here and fail
|
||||
unset RUSTFLAGS
|
||||
|
||||
local thinlto_jobs=${JOBS:-1}
|
||||
|
||||
case "$CARCH" in
|
||||
# on this platforms, lld seems to not utilise >1 threads for thinlto for some reason.
|
||||
# at the same time, having more than 8 also crashes lld for firefox buildsystems (why?).
|
||||
aarch64)
|
||||
if [ $thinlto_jobs -gt 8 ]; then
|
||||
thinlto_jobs=8
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS="$LDFLAGS -Wl,--thinlto-jobs=$thinlto_jobs"
|
||||
|
||||
case "$CARCH" in
|
||||
# lto for 64-bit systems only
|
||||
aarch64|x86_64|ppc64le)
|
||||
cat > .mozconfig base-mozconfig <<-EOF
|
||||
ac_add_options --enable-lto=cross
|
||||
EOF
|
||||
esac
|
||||
|
||||
./mach build
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" ./mach install
|
||||
|
||||
local _png
|
||||
for _png in ./browser/branding/official/default*.png; do
|
||||
local i=${_png%.png}
|
||||
i=${i##*/default}
|
||||
install -Dm644 "$_png" \
|
||||
"$pkgdir"/usr/share/icons/hicolor/"$i"x"$i"/apps/firefox-esr.png
|
||||
done
|
||||
|
||||
install -Dm644 browser/branding/official/content/about-logo.png \
|
||||
"$pkgdir"/usr/share/icons/hicolor/192x192/apps/firefox-esr.png
|
||||
install -Dm644 browser/branding/official/content/about-logo@2x.png \
|
||||
"$pkgdir"/usr/share/icons/hicolor/384x384/apps/firefox-esr.png
|
||||
install -Dm644 browser/branding/official/content/about-logo.svg \
|
||||
"$pkgdir"/usr/share/icons/hicolor/scalable/apps/firefox-esr.svg
|
||||
|
||||
install -Dm644 "$srcdir"/firefox.desktop \
|
||||
"$pkgdir"/usr/share/applications/firefox-esr.desktop
|
||||
|
||||
# install our vendor prefs
|
||||
install -Dm644 "$srcdir"/vendor-prefs.js \
|
||||
"$pkgdir"/$_mozappdir/browser/defaults/preferences/vendor.js
|
||||
|
||||
# Generate appdata file
|
||||
mkdir -p "$pkgdir"/usr/share/metainfo/
|
||||
export VERSION="$pkgver"
|
||||
export DATE="$_releasedate"
|
||||
envsubst < "$builddir"/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.appdata.xml.in > "$pkgdir"/usr/share/metainfo/org.mozilla.firefox-esr.appdata.xml
|
||||
|
||||
# Replace duplicate binary with wrapper
|
||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
|
||||
install -Dm755 /dev/stdin "$pkgdir"/usr/bin/firefox-esr <<- EOF
|
||||
#!/bin/sh
|
||||
exec $_mozappdir/firefox-esr "\$@"
|
||||
EOF
|
||||
rm "$pkgdir"/$_mozappdir/firefox-esr-bin
|
||||
ln -sfv /usr/bin/firefox-esr "$pkgdir"/$_mozappdir/firefox-esr-bin
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
f2b53c35bdd22a3de6f32699b832babcbf499667197c02dd50cf0b6cd956e0f4471f420938c2ab72f0a0686ed99fe74e3184afe9b5f7169130879b8f8fd99f0b firefox-102.10.0esr.source.tar.xz
|
||||
4e584621145cf8add069c6dac18e805b3274a1ee402d84e924df2341f7d3c5be261a93ef51283bacbd606f47fbdc628c4323ecc31efc5b403b8d224b18dc278f allow-custom-rust-vendor.patch
|
||||
b1cb2db3122634f66d2bae7066e76f2dcd455c464e021db4de3b0a08314df95cb667846081682db549dd2af8a00831cabe44a2420c66cdfb5e3b5fa7e6bd21d3 avoid-redefinition.patch
|
||||
0f793fc991e35ac17585c7ab5f86fe5925401bb9512167909706b85b51155e28b037e3a7ab775b243804195477ade36ec4ab32c3118885c52364079526ae26a9 bindgen.patch
|
||||
454ea3263cabce099accbdc47aaf83be26a19f8b5a4568c01a7ef0384601cf8315efd86cd917f9c8bf419c2c845db89a905f3ff9a8eb0c8e41042e93aa96a85c disable-moz-stackwalk.patch
|
||||
f7b3b45ba04d05d17439d009bf0c9f27881e126f424e2257552338a0c1e3771ee1289c044babcb0920f62af62873a268c0cf524e1d35711e6dc8b808ca5e9f26 esr-metainfo.patch
|
||||
a13dee87adf659423f5b3fa0358cfbde135fa614c85dd170d1a48d32ee080e27aef062d3a8e3c45059c41463fda579f8900988166ccb51568793ee7ef9080d04 firefox-esr-ffmpeg6.patch
|
||||
c2e17f269070d782154f843b95bf68be25d8c4356825dd436b1877aab63ac023051899371da5c21f6151970b2562376c2dadd2d6a038446e5fa621e2495668e1 ffmpeg6-fixup.patch
|
||||
d3a54897089eda9fdfe4b25ade1cb2c01c4b31fa9bf0e0ddbb0bbe674072ec5d36a6e52f791a8cbc8d3908e912ac2d7edec69b34d87ecca0acca876d45974c8d fix-neon-aom.patch
|
||||
2f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch
|
||||
cd68b89e29e5f6379fbd5679db27b9a5ef70ea65e51c0d0a8137e1f1fd210e35a8cfb047798e9549bc7275606d7ec5c8d8af1335d29da4699db7acd8bc7ff556 fix-rust-target.patch
|
||||
305c874fdea3096e9c4c6aa6520ac64bb1c347c4b59db8360096646593fe684c3b5377874d91cecd33d56d1410b4714fbdea2b514923723ecbeff79d51265d9b fix-webrtc-glibcisms.patch
|
||||
49aa1dfbe11ed5370e839afb190da7f55ae4887b35645865efe25d398d890563722caedd5696d648ad71448621fbc8bab8def1a3d079e301d6414f0f20e96758 gcc13.patch
|
||||
a4a3e062661bda64d502d426c480ac9645345860118de9df9ffe6e0597738c70c11e5cdef2d4fd12c5e2ee30a09310159230524655a419a4f7e4eeeb0f3c06b0 mallinfo.patch
|
||||
f3d419880cc7f043b6eb547894d486457d407640be2bd8b402eb3a534ccea39568f6d506fc44a3b29c94eb0dc6fc2bec6600d161786fd233d26b1dc8970f5ab4 python-deps.patch
|
||||
2518f2fc75b5db30058e0735f47d60fdf1e7adfaeee4b33fb2afb1bd9a616ce943fd88f4404d0802d4083703f4acf1d5ad42377218d025bc768807fbaf7e1609 sandbox-fork.patch
|
||||
b7d0a6126bdf6c0569f80aabf5b37ed2c7a35712eb8a0404a2d85381552f5555d4f97d213ea26cec6a45dc2785f22439376ed5f8e78b4fd664ef0223307b333e sandbox-largefile.patch
|
||||
94433c5ffdbe579c456d95c5f053f61fcbab2f652fa90bc69dcc27d9a1507a8e5c677adeadae9a7a75cc9a55184c1040737f4dfd10b279c088ef016561e6f135 sandbox-sched_setscheduler.patch
|
||||
12fbe50d94624931a581314b8e6e228a1f8a4550704a6ee4f8904184ac4727efd90982e87a8fdd318e15515f9430dfc6cf7455b301e903003027b3f0afa79795 zstandard.patch
|
||||
0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h
|
||||
d354f48a29bfc16719f3b230b1395063239d4420f9e47522de4662392d9697b15f931ca3bf6055d100fa33d61a9a1a13477687d5eac99e50ae7dbef9882a5808 firefox.desktop
|
||||
382510375b1a2fa79be0ab79e3391a021ae2c022429ffbaa7e7a69166f99bb56d01e59a1b10688592a29238f21c9d6977672bd77f9fae439b66bdfe0c55ddb15 mozilla-location.keys
|
||||
fc45bc3ffb9404e5338ea26a9f04807b40f6f516324972cddd48bedb91b8bd7c6b8d4e03a0209020f5e67b703bc4ff89389985791b9bd544a0fc3951e2dc338e vendor-prefs.js
|
||||
"
|
|
@ -1,9 +0,0 @@
|
|||
--- a/python/sites/mach.txt
|
||||
+++ b/python/sites/mach.txt
|
||||
@@ -134,4 +134,4 @@
|
||||
# We aren't (yet) able to pin packages in automation, so we have to
|
||||
# support down to the oldest locally-installed version (5.4.2).
|
||||
-pypi-optional:psutil>=5.4.2,<=5.8.0:telemetry will be missing some data
|
||||
+pypi-optional:psutil>=5.4.2,<=5.10.0:telemetry will be missing some data
|
||||
-pypi-optional:zstandard>=0.11.1,<=0.17.0:zstd archives will not be possible to extract
|
||||
+pypi-optional:zstandard>=0.11.1,<=0.18.0:zstd archives will not be possible to extract
|
|
@ -1,16 +0,0 @@
|
|||
upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1657849
|
||||
--- a/security/sandbox/linux/SandboxFilter.cpp
|
||||
+++ b/security/sandbox/linux/SandboxFilter.cpp
|
||||
@@ -1694,10 +1694,10 @@
|
||||
return Allow();
|
||||
case __NR_sched_get_priority_min:
|
||||
case __NR_sched_get_priority_max:
|
||||
+ case __NR_sched_setscheduler:
|
||||
return Allow();
|
||||
case __NR_sched_getparam:
|
||||
- case __NR_sched_getscheduler:
|
||||
- case __NR_sched_setscheduler: {
|
||||
+ case __NR_sched_getscheduler: {
|
||||
Arg<pid_t> pid(0);
|
||||
return If(pid == 0, Allow()).Else(Trap(SchedTrap, nullptr));
|
||||
}
|
|
@ -2,7 +2,7 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
|
||||
pkgname=gitaly
|
||||
pkgver=16.6.0
|
||||
pkgver=17.0.2
|
||||
pkgrel=0
|
||||
pkgdesc="A Git RPC service for handling all the git calls made by GitLab"
|
||||
url="https://gitlab.com/gitlab-org/gitaly/"
|
||||
|
@ -80,7 +80,7 @@ praefect() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
c2c49b39cd978ca184547c101e3ea9cd68d96bafef070c34350986f0343766d740398631aa451d0c7b51ac90a383594a5de211b468babda39e7080b33a1588f4 gitaly-v16.6.0.tar.gz
|
||||
55230e587839df8fc8c6daeee1e5a5fbd91d6d28966d9977d59e6fb3d75e269c9d4d119f3a06217a4c6c55733a50ec9affcdb132e77e1694df839269dcd292aa config.patch
|
||||
645673511a9fbf868094e58c36395867228ba8a9c8e829d499e8008d8a713bab5b0f0bd0daec3f2acea5349435ccfff3559d086a2a96edca97573f8dcbb92fbd gitaly-v17.0.2.tar.gz
|
||||
7685330e637c3a34db941c9e6b8776d0611ec16297e8be998a3eb4716c455d9f015d433a4d27720c24e520d489dd56bdab7c0e4264f2852b4b0bfd6ecaa7f773 config.patch
|
||||
c32105d921be16eaf559cf21d6840bc346cd92b5e37974cedecdb5a2d2ca1eb5e8fbb144f5fc8a1289bf9415102b313cf2d61ee510c80f08ab33a799f5ac7122 gitaly.initd
|
||||
"
|
||||
|
|
|
@ -1,95 +1,91 @@
|
|||
diff --git a/config.toml.example.orig b/config.toml.example
|
||||
index 3d454fb..52457df 100644
|
||||
index 82b8502..9982087 100644
|
||||
--- a/config.toml.example.orig
|
||||
+++ b/config.toml.example
|
||||
@@ -2,15 +2,15 @@
|
||||
# Documentation lives at https://docs.gitlab.com/ee/administration/gitaly/ and
|
||||
# https://docs.gitlab.com/ee//administration/gitaly/reference
|
||||
@@ -2,19 +2,24 @@
|
||||
# For Gitaly documentation, see https://docs.gitlab.com/ee/administration/gitaly/.
|
||||
|
||||
# A path which Gitaly should open a Unix socket.
|
||||
-socket_path = "/home/git/gitlab/tmp/sockets/private/gitaly.socket"
|
||||
+socket_path = "/run/gitlab/gitaly.socket"
|
||||
|
||||
# The directory where Gitaly's executables are stored
|
||||
# Directory containing Gitaly executables.
|
||||
-bin_dir = "/home/git/gitaly/_build/bin"
|
||||
+bin_dir = "/usr/bin"
|
||||
|
||||
-# # Optional: The directory where Gitaly can create all files required to
|
||||
-# # properly operate at runtime. If not set, Gitaly will create a directory in
|
||||
-# # the global temporary directory. This directory must exist.
|
||||
# # Optional. The directory where Gitaly can create all files required to
|
||||
# # properly operate at runtime. If not set, Gitaly will create a directory in
|
||||
# # the global temporary directory. This directory must exist.
|
||||
-# runtime_dir = "/home/git/gitaly/run"
|
||||
+# Optional: The directory where Gitaly can create all files required to
|
||||
+# properly operate at runtime. If not set, Gitaly will create a directory in
|
||||
+# the global temporary directory. This directory must exist.
|
||||
+runtime_dir = "/run/gitaly"
|
||||
|
||||
# # Optional: listen on a TCP socket. This is insecure (no authentication)
|
||||
# # Optional if socket_path is set. TCP address for Gitaly to listen on. This is insecure (unencrypted connection).
|
||||
# listen_addr = "localhost:9999"
|
||||
@@ -22,7 +22,7 @@ bin_dir = "/home/git/gitaly/_build/bin"
|
||||
# # Optional: configure where the Gitaly creates the sockets for internal connections. If unset, Gitaly will create a randomly
|
||||
# # named temp directory each time it boots.
|
||||
# # Non Gitaly clients should never connect to these sockets.
|
||||
-# internal_socket_dir = "/home/git/gitlab/tmp/sockets/private/internal"
|
||||
|
||||
+# # Optional: configure where the Gitaly creates the sockets for internal connections. If unset, Gitaly will create a randomly
|
||||
+# # named temp directory each time it boots.
|
||||
+# # Non Gitaly clients should never connect to these sockets.
|
||||
+internal_socket_dir = "/run/gitaly/internal"
|
||||
+
|
||||
# # Optional. TCP over TLS address for Gitaly to listen on.
|
||||
# tls_listen_addr = "localhost:8888"
|
||||
|
||||
# # Optional: authenticate Gitaly requests using a shared secret
|
||||
# [auth]
|
||||
@@ -30,8 +30,8 @@ bin_dir = "/home/git/gitaly/_build/bin"
|
||||
# transitioning = false # Set `transitioning` to true to temporarily allow unauthenticated while rolling out authentication.
|
||||
|
||||
@@ -35,9 +40,9 @@ bin_dir = "/home/git/gitaly/_build/bin"
|
||||
# # Gitaly supports TLS encryption. You must bring your own certificates because this isn’t provided automatically.
|
||||
# [tls]
|
||||
# # Path to the certificate.
|
||||
-# certificate_path = '/home/git/cert.cert'
|
||||
-# key_path = '/home/git/key.pem'
|
||||
+# certificate_path = '/etc/gitlab/ssl/gitaly.crt'
|
||||
# # Path to the key.
|
||||
-# key_path = '/home/git/key.pem'
|
||||
+# key_path = '/etc/gitlab/ssl/gitaly.key'
|
||||
|
||||
# # Git settings
|
||||
# [git]
|
||||
@@ -44,7 +44,7 @@ bin_dir = "/home/git/gitaly/_build/bin"
|
||||
|
||||
[[storage]]
|
||||
@@ -58,7 +63,7 @@ bin_dir = "/home/git/gitaly/_build/bin"
|
||||
# # The name of the storage
|
||||
name = "default"
|
||||
# # The path to the storage.
|
||||
-path = "/home/git/repositories"
|
||||
+path = "/var/lib/gitlab/repositories"
|
||||
|
||||
# # You can optionally configure more storages for this Gitaly instance to serve up
|
||||
#
|
||||
@@ -54,15 +54,15 @@ path = "/home/git/repositories"
|
||||
#
|
||||
|
||||
# # You can optionally configure Gitaly to output JSON-formatted log messages to stdout
|
||||
-# [logging]
|
||||
-# # The directory where Gitaly stores extra log files
|
||||
@@ -70,12 +75,12 @@ path = "/home/git/repositories"
|
||||
# # Optional. Configure Gitaly to output JSON-formatted log messages to stdout.
|
||||
# [logging]
|
||||
# # Directory where Gitaly stores extra log files.
|
||||
-dir = "/home/git/gitlab/log"
|
||||
+dir = "/vat/log/gitlab"
|
||||
# # Log format. Either 'text' or 'json'.
|
||||
-# format = "json"
|
||||
-# # Optional: Set log level to only log entries with that severity or above
|
||||
-# # One of, in order: debug, info, warn, errror, fatal, panic
|
||||
-# # Defaults to "info"
|
||||
-# level = "warn"
|
||||
-#
|
||||
+[logging]
|
||||
+# The directory where Gitaly stores extra log files
|
||||
+dir = "/var/log/gitlab"
|
||||
+format = "text"
|
||||
+# Optional: Set log level to only log entries with that severity or above
|
||||
+# One of, in order: debug, info, warn, errror, fatal, panic
|
||||
+# Defaults to "info"
|
||||
# # Optional. Set log level to only log entries with that severity or above.
|
||||
# # Valid values are, in order, 'debug', 'info', 'warn', 'error', 'fatal', and 'panic'. Defaults to 'info'.
|
||||
-# level = "warn"
|
||||
+level = "warn"
|
||||
+
|
||||
# # Additionally exceptions from the Go server can be reported to Sentry
|
||||
# # Additionally, exceptions from the Go server can be reported to Sentry. Sentry DSN (Data Source Name)
|
||||
# # for exception monitoring.
|
||||
# sentry_dsn = "https://<key>:<secret>@sentry.io/<project>"
|
||||
|
||||
@@ -71,11 +71,11 @@ dir = "/home/git/gitlab/log"
|
||||
# grpc_latency_buckets = [0.001, 0.005, 0.025, 0.1, 0.5, 1.0, 10.0, 30.0, 60.0, 300.0, 1500.0]
|
||||
|
||||
@@ -91,18 +96,18 @@ sentry_environment = ""
|
||||
# # Custom Git hooks that are used to perform tasks based on changes performed in any repository.
|
||||
[hooks]
|
||||
# # Directory where custom Git hooks are installed. If left unset, no custom hooks are used.
|
||||
-custom_hooks_dir = "/home/git/custom_hooks"
|
||||
+custom_hooks_dir = "/etc/gitlab/custom_hooks"
|
||||
|
||||
# # Gitaly must connect to the GitLab application to perform access checks when a user performs a change.
|
||||
[gitlab]
|
||||
-secret_file = "/home/git/gitlab-shell/.gitlab_shell_secret"
|
||||
# # URL of the GitLab server.
|
||||
-url = "http+unix://%2Fhome%2Fgit%2Fgitlab%2Ftmp%2Fsockets%2Fgitlab-workhorse.socket"
|
||||
+secret_file = "/etc/gitlab/gitlab_shell_secret"
|
||||
+url = "http+unix://%2Frun%2Fgitlab%2Fworkhorse.socket"
|
||||
# Only needed if a UNIX socket is used in `url` and GitLab is configured to
|
||||
# use a relative path (e.g. /gitlab).
|
||||
# # 'relative_url_root' is only needed if a UNIX socket is used in 'url' and GitLab is configured to
|
||||
# # use a relative path. For example, '/gitlab'.
|
||||
# relative_url_root = '/'
|
||||
# # Path of the file containing the secret token used to authenticate with GitLab. Use either 'secret_token' or 'secret'
|
||||
# # but not both.
|
||||
-secret_file = "/home/git/gitlab-shell/.gitlab_shell_secret"
|
||||
+secret_file = "/etc/gitlab/gitlab_shell_secret"
|
||||
# # Secret token used to authenticate with GitLab.
|
||||
# secret = ""
|
||||
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
pkgname=gitlab-foss
|
||||
_pkgname=${pkgname%-foss}
|
||||
pkgver=16.6.1
|
||||
pkgver=17.0.2
|
||||
_gittag=v$pkgver
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="A version control for your server"
|
||||
url="https://gitlab.com/gitlab-org/gitlab-foss"
|
||||
arch="x86_64 aarch64"
|
||||
|
@ -17,28 +17,30 @@ depends="
|
|||
cmd:dpkg-deb
|
||||
exiftool
|
||||
git>=2.42.0
|
||||
gitaly~=16.6
|
||||
gitlab-shell~=14.30
|
||||
gitaly~=17.0
|
||||
gitlab-shell>=14.35
|
||||
graphicsmagick
|
||||
http-parser
|
||||
procps
|
||||
py-docutils
|
||||
python3
|
||||
redis>=2.8
|
||||
ruby3.0
|
||||
ruby3.0-bigdecimal
|
||||
ruby3.0-bundler
|
||||
ruby3.0-fiddle
|
||||
ruby3.0-io-console
|
||||
ruby3.0-irb
|
||||
ruby3.0-json
|
||||
ruby3.0-rake
|
||||
ruby3.0-rdoc
|
||||
ruby3.0-webrick
|
||||
ruby
|
||||
ruby-bigdecimal
|
||||
ruby-bundler
|
||||
ruby-fiddle
|
||||
ruby-io-console
|
||||
ruby-irb
|
||||
ruby-json
|
||||
ruby-rake
|
||||
ruby-rdoc
|
||||
ruby-webrick
|
||||
shared-mime-info
|
||||
tzdata
|
||||
"
|
||||
makedepends="
|
||||
cargo
|
||||
clang-dev
|
||||
cmd:chrpath
|
||||
cmake
|
||||
file-dev
|
||||
|
@ -51,13 +53,13 @@ makedepends="
|
|||
libxml2-dev
|
||||
libxslt-dev
|
||||
linux-headers
|
||||
llvm
|
||||
nodejs
|
||||
openssl-dev
|
||||
protobuf-dev
|
||||
re2-dev
|
||||
ruby3.0-dev
|
||||
ruby3.0-grpc~=1.58
|
||||
ruby3.0-rugged
|
||||
ruby-dev
|
||||
rust
|
||||
yarn>=1.2.0
|
||||
"
|
||||
pkgusers="git"
|
||||
|
@ -74,7 +76,7 @@ source="https://gitlab.com/gitlab-org/gitlab-foss/-/archive/$_gittag/gitlab-foss
|
|||
$_pkgname.confd
|
||||
$_pkgname.logrotate
|
||||
bin-wrapper.in
|
||||
downgrade-sys-filesystem-depend.patch
|
||||
upgrade-sys-filesystem-depend.patch
|
||||
"
|
||||
builddir="$srcdir/gitlab-foss-$_gittag"
|
||||
|
||||
|
@ -83,11 +85,10 @@ _prefix="usr/lib/bundles/$_pkgname"
|
|||
export BUNDLE_DEPLOYMENT=true
|
||||
export BUNDLE_FORCE_RUBY_PLATFORM=true
|
||||
export BUNDLE_FROZEN=true
|
||||
export BUNDLE_JOBS=${JOBS:-2}
|
||||
# Should be tied to $JOBS, but rust native code fails to build
|
||||
export BUNDLE_JOBS=1
|
||||
|
||||
prepare() {
|
||||
local sysgemdir=$(ruby -e 'puts Gem.default_dir')
|
||||
|
||||
default_prepare
|
||||
|
||||
# The default log level is very chatty.
|
||||
|
@ -103,17 +104,6 @@ prepare() {
|
|||
|
||||
# Allow use of any bundler
|
||||
sed -i -e '/BUNDLED/,+1d' Gemfile.lock
|
||||
|
||||
# Some gems are broken, so we copy our fixed version
|
||||
# instead of installing it from RubyGems using Bundler.
|
||||
for i in grpc rugged; do
|
||||
mkdir -p vendor/gems/$i/src/ruby/lib/$i
|
||||
cp -r "$sysgemdir"/gems/$i-*/* vendor/gems/$i/
|
||||
cp "$sysgemdir"/specifications/$i-*.gemspec \
|
||||
vendor/gems/$i/$i.gemspec
|
||||
cp "$sysgemdir"/extensions/*/*/$i-*/$i/*.so \
|
||||
vendor/gems/$i/src/ruby/lib/$i/
|
||||
done
|
||||
}
|
||||
|
||||
build() {
|
||||
|
@ -149,9 +139,6 @@ build() {
|
|||
# Remove faulty RPATH.
|
||||
chrpath -d vendor/bundle/ruby/*/extensions/*/*/ruby-magic-*/magic/magic.so
|
||||
|
||||
# cp grpc lib
|
||||
cp vendor/gems/grpc/src/ruby/lib/grpc/grpc_c.so vendor/bundle/ruby/*/gems/grpc-*/src/ruby/lib/grpc/grpc_c.so
|
||||
|
||||
# Patch installed gem gitlab-markup to use python3.
|
||||
# Option "-S" causes that Python cannot find docutils module.
|
||||
sed -i 's/python2 -S/python3/g' \
|
||||
|
@ -377,15 +364,15 @@ assets() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
3d09db8e974becb6d54c2236e092735d67e114ee89ed89c69ef3171a6fe4441ba0023b8cf3eba97072f4b82e7b6452d47f790c0aa07791aabc372db501f866ab gitlab-foss-v16.6.1.tar.gz
|
||||
f9e9a5c4dec5a15281e9173ad93b260315330d4707985e5393d86e08d3dc1883cb107f5e4f6fd2c0d2d3e3325a99e678471a04aa613f8a4a99e9e965f7626466 gitlab-foss-v17.0.2.tar.gz
|
||||
daa496f3d9146f9dbddff62477bf49d5c7bd2f2a4cdbadc70ee51c8230f3ef01dc950ef157154b31c7e7bef0beecc5cbac50fbac65a79d6d9099b27bcba8b2ab database-config.patch
|
||||
55b0667d3969113ffd6860652ee8bdb9a534c25f413f33b2739e922c886988e7cea72c1c00c7eecf29fcff3682b1324156365605ffc6aae45d1e0ccddf96288b gitlab.initd
|
||||
1f451b67a5d5e58650b0fe862a2b65cfb8bff5502b37d94ae90619c1ff9affbecf24428303a2849bebce5f94bef37078f0e5710e344bbab616134e910938384a gitlab.mailroom.initd
|
||||
b6a6d9ba20557e61efa24f2d5a489873fefbb981f7d4465794a857b2971263c08ec29cc001c372522cdc0d48245e59751307c9f44f6ef4d87bf2e3ec5c23fb1c gitlab.rails.initd
|
||||
cb4ec100f0ea7ffcbb37aead8423e636629e2f4848b2974a7b2468e96cb1081ca732ac336417b08dd943afb961df888c73af1334dcbe054dfd361e74f492fd86 gitlab.sidekiq.initd
|
||||
85c4e257a030832bd70ad1e257ae7cb568b31e01201fc845abac02d00f02492ca694be1fa2bf743dd8c8623e6a79d36adee3f4de02040134c11158a6001c064b gitlab.workhorse.initd
|
||||
8d0b6dbd60356ea940c0075c8c0e1d4263e23eb9025d6308b8fadbb37084272d6cf1e0b03c683d37b5c3e905c2bd05dac949921676214c0cd4b3c845ac7f1e3f gitlab.workhorse.initd
|
||||
4dc00b16462f30591297fcb535fc364185d3ed76e9956597f0423a8dfd8a9a351f6ac29d9f0c73052c11324fba4768eb89a21c6bef4da99f15baaea8c9ab8407 gitlab.confd
|
||||
57f258246925fbef0780caebdf005983c72fe3db1ab3242a1e00137bd322f5ec6c0fd958db7178b8fc22103d071f550d6f71f08422bcd9e859d2a734b2ecef00 gitlab.logrotate
|
||||
a944c3886388ba1574bf8c96b6de4d9f24ef4a83f553c31a224e17a3b01f2a5c65b60c59b7ed7ca4b25670c60ea8dd41b96a8a623d909d2bb09bdf2520ed7f23 bin-wrapper.in
|
||||
ab9a09fca6126b18b76e61380990dc217f915162985880e90b905b3210a1fef229af3db1f1ca180177d3cba91ab5fe33798ac685055abf0adc44a1b630f71b39 downgrade-sys-filesystem-depend.patch
|
||||
0eaa7de9a906ddb0fe84b7afbaec893a134bbbdb9e71da75cf4095ef40404643e51447aee88d3cad6e565bc709b34ffd8901cc93061e4a2a410838aed42d3644 upgrade-sys-filesystem-depend.patch
|
||||
"
|
||||
|
|
|
@ -16,6 +16,7 @@ command_args="
|
|||
-authBackend=http://${puma_listen_tcp:="127.0.0.1:8080"}
|
||||
-config=${workhorse_config:="/etc/gitlab/workhorse.toml"}
|
||||
-documentRoot=${gitlab_public_dir:="$gitlab_base/public"}
|
||||
-listenNetwork=${workhorse_listen_net:="unix"}
|
||||
-listenAddr=${workhorse_listen:="/run/gitlab/workhorse.socket"}
|
||||
-listenUmask=${workhorse_listen_umask:="000"}
|
||||
-logFile=$workhorse_logfile
|
||||
|
|
|
@ -7,31 +7,29 @@ index c1e9e34..a4448b7 100644
|
|||
# System information
|
||||
gem 'vmstat', '~> 2.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
-gem 'sys-filesystem', '~> 1.4.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
+gem 'sys-filesystem', '= 1.3.2' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
+gem 'sys-filesystem', '~> 1.4.5' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# NTP client
|
||||
gem 'net-ntp' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
diff --git a/Gemfile.lock.orig b/Gemfile.lock
|
||||
index e2ebb91..39b6df3 100644
|
||||
index bb66169..a4da10b 100644
|
||||
--- a/Gemfile.lock.orig
|
||||
+++ b/Gemfile.lock
|
||||
@@ -1605,8 +1605,8 @@ GEM
|
||||
@@ -1657,7 +1657,7 @@ GEM
|
||||
attr_required (>= 0.0.5)
|
||||
httpclient (>= 2.4)
|
||||
sync (0.5.0)
|
||||
- sys-filesystem (1.4.3)
|
||||
- ffi (~> 1.1)
|
||||
+ sys-filesystem (1.3.2)
|
||||
+ ffi (>= 0)
|
||||
+ sys-filesystem (1.4.5)
|
||||
ffi (~> 1.1)
|
||||
sysexits (1.2.0)
|
||||
table_print (1.5.7)
|
||||
tanuki_emoji (0.9.0)
|
||||
@@ -2061,7 +2059,7 @@ DEPENDENCIES
|
||||
ssh_data (~> 1.3)
|
||||
@@ -2123,7 +2123,7 @@ DEPENDENCIES
|
||||
stackprof (~> 0.2.25)
|
||||
state_machines-activerecord (~> 0.8.0)
|
||||
static_holmes (~> 0.7.7)
|
||||
- sys-filesystem (~> 1.4.3)
|
||||
+ sys-filesystem (= 1.3.2)
|
||||
+ sys-filesystem (~> 1.4.5)
|
||||
tanuki_emoji (~> 0.9)
|
||||
telesignenterprise (~> 2.2)
|
||||
terser (= 1.0.2)
|
|
@ -2,9 +2,9 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
|
||||
pkgname=gitlab-pages
|
||||
pkgver=16.6.0
|
||||
pkgver=17.0.2
|
||||
_gittag="v$pkgver"
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="A daemon used to serve static websites for GitLab users"
|
||||
url="https://gitlab.com/gitlab-org/gitlab-pages/"
|
||||
arch="all"
|
||||
|
@ -29,7 +29,7 @@ package() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
9574321d6d423a28b6d80aed5c9cc598b0d76b6b179ed515e8d4e6277d9d2bc9f9e18bc4e96b68f686f32502e279026c6891c46f329d4267ac1e8031bfd8c2f7 gitlab-pages-v16.6.0.tar.gz
|
||||
3cbd35acdd98acac4300bf1eadedd53db8925ae70c1af7c94eaff26399b501490b81432631c493988ca5fa91154b72b0eb8b00441caec6f67771be3079bee526 gitlab-pages-v17.0.2.tar.gz
|
||||
710a9b652327e57e620c2bdb02bf912a6f61044eaaf61d36c6612284e9b951d2ac6f5eef77dfea16a0cde328bd4c556d9e47791c560139c27cb9659076f809b1 ungit-makefile.patch
|
||||
20bc66c1c3548568ed353ca8d584f9108b9688f9375f212a18efc7b8386fdaafb3b2dc9e865f21c7f8fd31ada6e91842a8bb8d397f64851d853bb0de3e0e60bb gitlab-pages.initd
|
||||
f53bfb315b4a140e17cff0df40b0445f74f19c2a9dc4910865f075bf2d369d18b3808fcb63ff4514a568598691f04700a2422f60011cf8a0805799da55fe8cbf gitlab-pages.initd
|
||||
"
|
||||
|
|
|
@ -11,9 +11,12 @@ command="/usr/bin/gitlab-pages"
|
|||
# Note: The rest of the options is set in start_pre().
|
||||
command_args="
|
||||
-pages-domain=$pages_domain
|
||||
-gitlab-server=$pages_gitlab_server
|
||||
-artifacts-server=$pages_artifacts_server
|
||||
-pages-root=$pages_root
|
||||
-redirect-http=${pages_redirect_http:-true}
|
||||
-use-http2=${pages_use_http2:-true}
|
||||
-api-secret-key=$pages_api_secret_key
|
||||
"
|
||||
command_background="yes"
|
||||
|
||||
|
@ -51,5 +54,5 @@ start_pre() {
|
|||
}
|
||||
|
||||
optif() {
|
||||
test -n "$2" && printf '%s/n' "$1=$2" || true
|
||||
test -n "$2" && printf '%s' "$1=$2" || true
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
|
||||
pkgname=gitlab-shell
|
||||
pkgver=14.30.1
|
||||
pkgver=14.35.0
|
||||
pkgrel=0
|
||||
pkgdesc="GitLab Shell handles git SSH sessions for GitLab"
|
||||
url="https://gitlab.com/gitlab-org/gitlab-shell"
|
||||
|
@ -59,8 +59,8 @@ package() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
5cd602ffc98fa2f6c5efbc9541bb6ff234253e299b690aa43feaefab2518b63fd0f69a8c3d79a4f04624c2a6daceaefc300be90ef2a29ff0b8a2392d0ae710cf gitlab-shell-v14.30.1.tar.gz
|
||||
8cf13bf472e22b1c429bba5df98afb931c80b043ec83c8366d59f15a1e9b21daf09078f134e7aa622c87b32c774d1d5cf129878d5035102c06d0b12ead33f804 config.patch
|
||||
eec1020dfa579dfec61ce3fbaea7c98a415be257595b7894a980b9d9157e225d74e6fe5ca768938eb25a1d88992e8806bb475f7e5adffb8dbffa0f01256d1fc1 gitlab-shell-v14.35.0.tar.gz
|
||||
e9dd69c57c65197493f75bdde682075c6ab22892ed07d37c7a73129fb42a8349a676d5986bfd17f1df331645334248383845f21ce08d1e9664c38e4bbf5343ba config.patch
|
||||
499b3a46ea94a33a23b01f6a7509d74f5a6781b930619b3b8ae42bdeae8a052cc636578744d7992b4ae4f9b9f72b11ee3d3c0f5e50986fa3f7e35b979b08aada change-config-path.patch
|
||||
c53da7f145593693392d9fa880ad5a1909bfc7504fd1c93d94a468c3e0f5cc80f712f41ee1dc8bf38105b410c1165658f208bd88a70c4674104c78af33d8d09c gitconfig
|
||||
"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
diff --git a/config.yml.example.orig b/config.yml.example
|
||||
index 886fde0..f03c897 100644
|
||||
index fb147c4..98eb0e3 100644
|
||||
--- a/config.yml.example.orig
|
||||
+++ b/config.yml.example
|
||||
@@ -13,7 +13,7 @@ user: git
|
||||
|
@ -47,11 +47,10 @@ index 886fde0..f03c897 100644
|
|||
|
||||
# Audit usernames.
|
||||
# Set to true to see real usernames in the logs instead of key ids, which is easier to follow, but
|
||||
@@ -61,57 +61,3 @@ audit_usernames: false
|
||||
# Distributed Tracing. GitLab-Shell has distributed tracing instrumentation.
|
||||
@@ -62,62 +62,6 @@ audit_usernames: false
|
||||
# For more details, visit https://docs.gitlab.com/ee/development/distributed_tracing.html
|
||||
# gitlab_tracing: opentracing://driver
|
||||
-
|
||||
|
||||
-# This section configures the built-in SSH server. Ignored when running on OpenSSH.
|
||||
-sshd:
|
||||
- # Address which the SSH server listens on. Defaults to [::]:22.
|
||||
|
@ -88,6 +87,8 @@ index 886fde0..f03c897 100644
|
|||
- kex_algorithms: [curve25519-sha256, curve25519-sha256@libssh.org, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-group14-sha256, diffie-hellman-group14-sha1]
|
||||
- # Specified the ciphers allowed
|
||||
- ciphers: [aes128-gcm@openssh.com, chacha20-poly1305@openssh.com, aes256-gcm@openssh.com, aes128-ctr, aes192-ctr,aes256-ctr]
|
||||
- # Specified the available Public Key algorithms
|
||||
- public_key_algorithms: [ssh-rsa, ssh-dss, ecdsa-sha2-nistp256, sk-ecdsa-sha2-nistp256@openssh.com, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, ssh-ed25519, sk-ssh-ed25519@openssh.com, rsa-sha2-256, rsa-sha2-512]
|
||||
- # SSH host key files.
|
||||
- host_key_files:
|
||||
- - /run/secrets/ssh-hostkeys/ssh_host_rsa_key
|
||||
|
@ -105,3 +106,7 @@ index 886fde0..f03c897 100644
|
|||
- keytab: ""
|
||||
- # The Kerberos service name to be used by sshd. Defaults to "", accepts any service name in keytab file.
|
||||
- service_principal_name: ""
|
||||
-
|
||||
lfs:
|
||||
# https://gitlab.com/groups/gitlab-org/-/epics/11872, disabled by default.
|
||||
pure_ssh_protocol: false
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# Maintainer: wener <wenermail@gmail.com>
|
||||
pkgname=grpc
|
||||
pkgver=1.58.0
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="The C based gRPC"
|
||||
url="https://grpc.io/"
|
||||
arch="all"
|
||||
|
@ -22,7 +22,7 @@ _pythondepends="
|
|||
"
|
||||
_rubydepends="
|
||||
$pkgname=$pkgver-r$pkgrel
|
||||
ruby3.0-google-protobuf>=3.19
|
||||
ruby-google-protobuf>=3.19
|
||||
"
|
||||
makedepends="
|
||||
abseil-cpp-dev
|
||||
|
@ -38,7 +38,7 @@ makedepends="
|
|||
openssl-dev>3
|
||||
protobuf-dev
|
||||
re2-dev
|
||||
ruby3.0-dev
|
||||
ruby-dev
|
||||
samurai
|
||||
yaml-dev
|
||||
xxhash-dev
|
||||
|
@ -54,7 +54,7 @@ subpackages="
|
|||
$pkgname-doc
|
||||
py3-grpcio-pyc
|
||||
py3-grpcio:grpcio
|
||||
ruby3.0-grpc:_ruby
|
||||
ruby-grpc:_ruby
|
||||
libaddress_sorting:lib
|
||||
libgpr:lib
|
||||
libgrpc:lib
|
||||
|
|
72
user/icedtea-web/APKBUILD
Normal file
72
user/icedtea-web/APKBUILD
Normal file
|
@ -0,0 +1,72 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
pkgname=icedtea-web
|
||||
pkgver=2.0.0_alpha29
|
||||
_pkgver=2.0.0-alpha29
|
||||
pkgrel=0
|
||||
pkgdesc='Additional components for OpenJDK - Browser plug-in and Web Start implementation'
|
||||
url='https://github.com/AdoptOpenJDK/IcedTea-Web'
|
||||
arch="x86_64"
|
||||
license="GPL-2.0-only"
|
||||
depends="openjdk8-jre"
|
||||
# optdepend: rhino
|
||||
makedepends="
|
||||
cargo
|
||||
bash
|
||||
openjdk8
|
||||
autoconf
|
||||
automake
|
||||
zip
|
||||
glib-dev
|
||||
libxtst-dev
|
||||
npapi-sdk
|
||||
junit
|
||||
firefox
|
||||
epiphany
|
||||
rust
|
||||
bc
|
||||
maven
|
||||
"
|
||||
source="https://github.com/AdoptOpenJDK/IcedTea-Web/archive/icedtea-web-$_pkgver.tar.gz"
|
||||
builddir="$srcdir"/IcedTea-Web-icedtea-web-$_pkgver
|
||||
options="!check" # investigate failures later
|
||||
|
||||
export MAVEN_ARGS="--batch-mode -Duser.home=$srcdir/.home"
|
||||
|
||||
build() {
|
||||
mvn install -DskipTests
|
||||
(
|
||||
cd launchers
|
||||
JRE=/usr/lib/jvm/default-jvm bash ./build.sh
|
||||
)
|
||||
}
|
||||
|
||||
check() {
|
||||
mvn test
|
||||
}
|
||||
|
||||
package() {
|
||||
install -dm 755 \
|
||||
"$pkgdir"/usr/share/applications \
|
||||
"$pkgdir"/usr/share/pixmaps \
|
||||
"$pkgdir"/usr/lib/mozilla/plugins/ \
|
||||
"$pkgdir"/usr/bin
|
||||
|
||||
cp -R launchers/target "$pkgdir"/usr/lib/icedtea-web
|
||||
install -Dm 644 launchers/javaws.png -t "$pkgdir"/usr/share/pixmaps
|
||||
|
||||
for i in javaws.desktop.in itweb-settings.desktop.in policyeditor.desktop.in; do
|
||||
sed 's|PATH_TO_JAVAWS|/usr/bin/javaws|' launchers/xdesktop.in/$i > "$pkgdir"/usr/share/applications/$i
|
||||
done
|
||||
|
||||
## link binaries into /usr/bin + jre/bin
|
||||
for file in "$builddir"/launchers/target/bin/*; do
|
||||
ln -sf "/usr/lib/icedtea-web/bin/$(basename "$file")" "$pkgdir"/usr/bin
|
||||
done
|
||||
|
||||
# ## link the mozilla-plugin - test it here http://www.java.com/en/download/help/testvm.xml
|
||||
# ln -sf /usr/lib/icedtea-web/lib/IcedTeaPlugin.so "$pkgdir"/usr/lib/mozilla/plugins/
|
||||
}
|
||||
sha512sums="
|
||||
453cb206ea0d2e488c0709962e96f03e3658cf050c10242046e6a89dfa24a3351904650cf09398d0cc6caab56c22aa3ccde50e348dd5a8fb863cbe329881bc53 icedtea-web-2.0.0-alpha29.tar.gz
|
||||
"
|
|
@ -4,7 +4,7 @@
|
|||
pkgname=linux-rm-headers
|
||||
pkgver=5.4.70
|
||||
_rmver=1.3.3
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc="Linux kernel headers with reMarkable patches"
|
||||
url=https://github.com/reMarkable/linux
|
||||
provides="linux-headers=$pkgver-r$pkgrel"
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
|
||||
pkgname=linux-rm
|
||||
pkgver=5.4.70
|
||||
_rmver=1.3.3
|
||||
pkgrel=10
|
||||
_rmver=1.3.4
|
||||
pkgrel=11
|
||||
pkgdesc="Linux kernel with reMarkable patches"
|
||||
url=https://github.com/reMarkable/linux
|
||||
depends="initramfs-generator linux-firmware-brcm linux-firmware-cypress"
|
||||
|
@ -17,6 +17,7 @@ builddir="$srcdir"/linux-RM1XX_${pkgver}_v$_rmver
|
|||
source="
|
||||
https://github.com/reMarkable/linux/archive/refs/tags/RM1XX_${pkgver}_v$_rmver.tar.gz
|
||||
https://raw.githubusercontent.com/ichaozi/RemarkableFramebuffer/0f37dc8c06d340dc1af52ff2d4d6d5789ccf14bb/kernel-mxc-epdc-fb-reference/epdc_ES103CS1.fw
|
||||
arm-replace-sun-style-flash-on-section-directive.patch
|
||||
brcmfmac-disable-power-management.patch
|
||||
brcmfmac-fix-suspend-resume-when-power-is-cut-off.patch
|
||||
enable-automatic-partial-refreshing.patch
|
||||
|
@ -246,11 +247,12 @@ _dev() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
80ab274ca3d30935d9913490662f17499c1ceedb438fe171554097d25ffc1cf85ee53f0c1642e94c0b833fdfb17636cd554bf685e4a6f5dac20cf122c1a25447 RM1XX_5.4.70_v1.3.3.tar.gz
|
||||
0409c8443f5a705e8254858f966eed571b935f1be952f64c1d74b52a043d0638ba358370ca20f665d69b70aabe06f03e0bfa02ccd1a4a2a174d5b9579a10b44e RM1XX_5.4.70_v1.3.4.tar.gz
|
||||
ad4bd6f332319aceee7a1c7b71b49439e8217621214b6249c7e20198360d02ea442f31edfc8e1af1b85ed71e6f97c1cb7decf7b0885c9d0293361eef47f218b2 epdc_ES103CS1.fw
|
||||
f9114f8843317e1d26fbf1831182bc9c8d5907a92af6312c778f32be81414cfddfc3ced7b58375960232031d3295e8770b1a1e7466d2ace99e01bbcccd838543 arm-replace-sun-style-flash-on-section-directive.patch
|
||||
c5fc4f2f70112cc66a91a2948f7fd4adcd7172a95191b4c862084c7b80093cfa696925aa9a825c41bddac7441ba153eb264b8146e52a4556a73349e6fd10e641 brcmfmac-disable-power-management.patch
|
||||
27ec1bc1d916dbd2258192c1ed864eacbd2746b49caa554fbaf1124bac478bab0b729e7fabbab8705ae175bb098800f795d415f4de4964da921c1b802560b67a brcmfmac-fix-suspend-resume-when-power-is-cut-off.patch
|
||||
0f47278c5bfafb939e46224fbf16f9491e3cc560ac128dcf430a1f6cf9064fb1c5bf5db1a3076c35d30c004aec525a7d6616a647564f197bb29c57701c1db982 enable-automatic-partial-refreshing.patch
|
||||
f7891cc029c362a270b98e488da0b8ac941d73971735fcdef88b872a00ffa5b90b98f4f5ece7f8e62506e23e88b1badccf439082d80a5433a564b28095f6007a config-changes-rm.armv7
|
||||
f7891cc029c362a270b98e488da0b8ac941d73971735fcdef88b872a00ffa5b90b98f4f5ece7f8e62506e23e88b1badccf439082d80a5433a564b28095f6007a config-changes-rm.armhf
|
||||
9d01054ea7e4ee43836cc536bead5c1707b133790a4ef63e29feb10de4e0b290ba8829980b5340f56bee1e9ec0de66e1e4a55f03c0e6aacbce871a9d60e6ef2e config-changes-rm.armv7
|
||||
9d01054ea7e4ee43836cc536bead5c1707b133790a4ef63e29feb10de4e0b290ba8829980b5340f56bee1e9ec0de66e1e4a55f03c0e6aacbce871a9d60e6ef2e config-changes-rm.armhf
|
||||
"
|
||||
|
|
|
@ -0,0 +1,428 @@
|
|||
From 790756c7e0229dedc83bf058ac69633045b1000e Mon Sep 17 00:00:00 2001
|
||||
From: Nick Desaulniers <ndesaulniers@google.com>
|
||||
Date: Mon, 4 Nov 2019 19:31:45 +0100
|
||||
Subject: [PATCH] ARM: 8933/1: replace Sun/Solaris style flag on section
|
||||
directive
|
||||
|
||||
It looks like a section directive was using "Solaris style" to declare
|
||||
the section flags. Replace this with the GNU style so that Clang's
|
||||
integrated assembler can assemble this directive.
|
||||
|
||||
The modified instances were identified via:
|
||||
$ ag \.section | grep #
|
||||
|
||||
Link: https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_7.html#SEC119
|
||||
Link: https://github.com/ClangBuiltLinux/linux/issues/744
|
||||
Link: https://bugs.llvm.org/show_bug.cgi?id=43759
|
||||
Link: https://reviews.llvm.org/D69296
|
||||
|
||||
Acked-by: Nicolas Pitre <nico@fluxnic.net>
|
||||
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
|
||||
Reviewed-by: Stefan Agner <stefan@agner.ch>
|
||||
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
|
||||
Suggested-by: Fangrui Song <maskray@google.com>
|
||||
Suggested-by: Jian Cai <jiancai@google.com>
|
||||
Suggested-by: Peter Smith <peter.smith@linaro.org>
|
||||
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
|
||||
---
|
||||
arch/arm/boot/bootp/init.S | 2 +-
|
||||
arch/arm/boot/compressed/big-endian.S | 2 +-
|
||||
arch/arm/boot/compressed/head.S | 2 +-
|
||||
arch/arm/boot/compressed/piggy.S | 2 +-
|
||||
arch/arm/mm/proc-arm1020.S | 2 +-
|
||||
arch/arm/mm/proc-arm1020e.S | 2 +-
|
||||
arch/arm/mm/proc-arm1022.S | 2 +-
|
||||
arch/arm/mm/proc-arm1026.S | 2 +-
|
||||
arch/arm/mm/proc-arm720.S | 2 +-
|
||||
arch/arm/mm/proc-arm740.S | 2 +-
|
||||
arch/arm/mm/proc-arm7tdmi.S | 2 +-
|
||||
arch/arm/mm/proc-arm920.S | 2 +-
|
||||
arch/arm/mm/proc-arm922.S | 2 +-
|
||||
arch/arm/mm/proc-arm925.S | 2 +-
|
||||
arch/arm/mm/proc-arm926.S | 2 +-
|
||||
arch/arm/mm/proc-arm940.S | 2 +-
|
||||
arch/arm/mm/proc-arm946.S | 2 +-
|
||||
arch/arm/mm/proc-arm9tdmi.S | 2 +-
|
||||
arch/arm/mm/proc-fa526.S | 2 +-
|
||||
arch/arm/mm/proc-feroceon.S | 2 +-
|
||||
arch/arm/mm/proc-mohawk.S | 2 +-
|
||||
arch/arm/mm/proc-sa110.S | 2 +-
|
||||
arch/arm/mm/proc-sa1100.S | 2 +-
|
||||
arch/arm/mm/proc-v6.S | 2 +-
|
||||
arch/arm/mm/proc-v7.S | 2 +-
|
||||
arch/arm/mm/proc-v7m.S | 4 ++--
|
||||
arch/arm/mm/proc-xsc3.S | 2 +-
|
||||
arch/arm/mm/proc-xscale.S | 2 +-
|
||||
28 files changed, 29 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/bootp/init.S b/arch/arm/boot/bootp/init.S
|
||||
index 5c476bd2b4ce9c..b562da2f704088 100644
|
||||
--- a/arch/arm/boot/bootp/init.S
|
||||
+++ b/arch/arm/boot/bootp/init.S
|
||||
@@ -13,7 +13,7 @@
|
||||
* size immediately following the kernel, we could build this into
|
||||
* a binary blob, and concatenate the zImage using the cat command.
|
||||
*/
|
||||
- .section .start,#alloc,#execinstr
|
||||
+ .section .start, "ax"
|
||||
.type _start, #function
|
||||
.globl _start
|
||||
|
||||
diff --git a/arch/arm/boot/compressed/big-endian.S b/arch/arm/boot/compressed/big-endian.S
|
||||
index 88e2a88d324b25..0e092c36da2f27 100644
|
||||
--- a/arch/arm/boot/compressed/big-endian.S
|
||||
+++ b/arch/arm/boot/compressed/big-endian.S
|
||||
@@ -6,7 +6,7 @@
|
||||
* Author: Nicolas Pitre
|
||||
*/
|
||||
|
||||
- .section ".start", #alloc, #execinstr
|
||||
+ .section ".start", "ax"
|
||||
|
||||
mrc p15, 0, r0, c1, c0, 0 @ read control reg
|
||||
orr r0, r0, #(1 << 7) @ enable big endian mode
|
||||
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
|
||||
index ae70754d003daa..ead21e5f2b8032 100644
|
||||
--- a/arch/arm/boot/compressed/head.S
|
||||
+++ b/arch/arm/boot/compressed/head.S
|
||||
@@ -140,7 +140,7 @@
|
||||
#endif
|
||||
.endm
|
||||
|
||||
- .section ".start", #alloc, #execinstr
|
||||
+ .section ".start", "ax"
|
||||
/*
|
||||
* sort out different calling conventions
|
||||
*/
|
||||
diff --git a/arch/arm/boot/compressed/piggy.S b/arch/arm/boot/compressed/piggy.S
|
||||
index 0284f84dcf3804..27577644ee721a 100644
|
||||
--- a/arch/arm/boot/compressed/piggy.S
|
||||
+++ b/arch/arm/boot/compressed/piggy.S
|
||||
@@ -1,5 +1,5 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
- .section .piggydata,#alloc
|
||||
+ .section .piggydata, "a"
|
||||
.globl input_data
|
||||
input_data:
|
||||
.incbin "arch/arm/boot/compressed/piggy_data"
|
||||
diff --git a/arch/arm/mm/proc-arm1020.S b/arch/arm/mm/proc-arm1020.S
|
||||
index 4fa5371bc6624c..2785da387c9104 100644
|
||||
--- a/arch/arm/mm/proc-arm1020.S
|
||||
+++ b/arch/arm/mm/proc-arm1020.S
|
||||
@@ -491,7 +491,7 @@ cpu_arm1020_name:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm1020_proc_info,#object
|
||||
__arm1020_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm1020e.S b/arch/arm/mm/proc-arm1020e.S
|
||||
index 5d8a8339e09a4e..e9ea237ed78525 100644
|
||||
--- a/arch/arm/mm/proc-arm1020e.S
|
||||
+++ b/arch/arm/mm/proc-arm1020e.S
|
||||
@@ -449,7 +449,7 @@ arm1020e_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm1020e_proc_info,#object
|
||||
__arm1020e_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm1022.S b/arch/arm/mm/proc-arm1022.S
|
||||
index b3dd95c345e482..920c279e7879d8 100644
|
||||
--- a/arch/arm/mm/proc-arm1022.S
|
||||
+++ b/arch/arm/mm/proc-arm1022.S
|
||||
@@ -443,7 +443,7 @@ arm1022_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm1022_proc_info,#object
|
||||
__arm1022_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm1026.S b/arch/arm/mm/proc-arm1026.S
|
||||
index e927187157d7d5..0bdf25a95b107d 100644
|
||||
--- a/arch/arm/mm/proc-arm1026.S
|
||||
+++ b/arch/arm/mm/proc-arm1026.S
|
||||
@@ -437,7 +437,7 @@ arm1026_crval:
|
||||
string cpu_arm1026_name, "ARM1026EJ-S"
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm1026_proc_info,#object
|
||||
__arm1026_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm720.S b/arch/arm/mm/proc-arm720.S
|
||||
index c99d24363f32ee..39361e196d61b8 100644
|
||||
--- a/arch/arm/mm/proc-arm720.S
|
||||
+++ b/arch/arm/mm/proc-arm720.S
|
||||
@@ -172,7 +172,7 @@ arm720_crval:
|
||||
* See <asm/procinfo.h> for a definition of this structure.
|
||||
*/
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro arm720_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req, cpu_flush:req
|
||||
.type __\name\()_proc_info,#object
|
||||
diff --git a/arch/arm/mm/proc-arm740.S b/arch/arm/mm/proc-arm740.S
|
||||
index 1b4a3838393fbd..1a94bbf6e53fc2 100644
|
||||
--- a/arch/arm/mm/proc-arm740.S
|
||||
+++ b/arch/arm/mm/proc-arm740.S
|
||||
@@ -128,7 +128,7 @@ __arm740_setup:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
.type __arm740_proc_info,#object
|
||||
__arm740_proc_info:
|
||||
.long 0x41807400
|
||||
diff --git a/arch/arm/mm/proc-arm7tdmi.S b/arch/arm/mm/proc-arm7tdmi.S
|
||||
index 17a4687065c7f9..52b66cf0259e3f 100644
|
||||
--- a/arch/arm/mm/proc-arm7tdmi.S
|
||||
+++ b/arch/arm/mm/proc-arm7tdmi.S
|
||||
@@ -72,7 +72,7 @@ __arm7tdmi_setup:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro arm7tdmi_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req, \
|
||||
extra_hwcaps=0
|
||||
diff --git a/arch/arm/mm/proc-arm920.S b/arch/arm/mm/proc-arm920.S
|
||||
index 298c76b47749f9..31ac8acc34dc55 100644
|
||||
--- a/arch/arm/mm/proc-arm920.S
|
||||
+++ b/arch/arm/mm/proc-arm920.S
|
||||
@@ -434,7 +434,7 @@ arm920_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm920_proc_info,#object
|
||||
__arm920_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm922.S b/arch/arm/mm/proc-arm922.S
|
||||
index 824be3a0bc2382..ca2c7ca8af2146 100644
|
||||
--- a/arch/arm/mm/proc-arm922.S
|
||||
+++ b/arch/arm/mm/proc-arm922.S
|
||||
@@ -412,7 +412,7 @@ arm922_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm922_proc_info,#object
|
||||
__arm922_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm925.S b/arch/arm/mm/proc-arm925.S
|
||||
index d40cff8f102c2b..a381a0c9f1092e 100644
|
||||
--- a/arch/arm/mm/proc-arm925.S
|
||||
+++ b/arch/arm/mm/proc-arm925.S
|
||||
@@ -477,7 +477,7 @@ arm925_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro arm925_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req, cache
|
||||
.type __\name\()_proc_info,#object
|
||||
diff --git a/arch/arm/mm/proc-arm926.S b/arch/arm/mm/proc-arm926.S
|
||||
index 4ef89e1d11276e..1ba253c2bce190 100644
|
||||
--- a/arch/arm/mm/proc-arm926.S
|
||||
+++ b/arch/arm/mm/proc-arm926.S
|
||||
@@ -460,7 +460,7 @@ arm926_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm926_proc_info,#object
|
||||
__arm926_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm940.S b/arch/arm/mm/proc-arm940.S
|
||||
index 1c26d991386d7d..4b8a00220cc976 100644
|
||||
--- a/arch/arm/mm/proc-arm940.S
|
||||
+++ b/arch/arm/mm/proc-arm940.S
|
||||
@@ -340,7 +340,7 @@ __arm940_setup:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __arm940_proc_info,#object
|
||||
__arm940_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-arm946.S b/arch/arm/mm/proc-arm946.S
|
||||
index 2dc1c75a4fd4a8..555becf9c758d1 100644
|
||||
--- a/arch/arm/mm/proc-arm946.S
|
||||
+++ b/arch/arm/mm/proc-arm946.S
|
||||
@@ -395,7 +395,7 @@ __arm946_setup:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
.type __arm946_proc_info,#object
|
||||
__arm946_proc_info:
|
||||
.long 0x41009460
|
||||
diff --git a/arch/arm/mm/proc-arm9tdmi.S b/arch/arm/mm/proc-arm9tdmi.S
|
||||
index 913c06e590af51..ef517530130b03 100644
|
||||
--- a/arch/arm/mm/proc-arm9tdmi.S
|
||||
+++ b/arch/arm/mm/proc-arm9tdmi.S
|
||||
@@ -66,7 +66,7 @@ __arm9tdmi_setup:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro arm9tdmi_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req
|
||||
.type __\name\()_proc_info, #object
|
||||
diff --git a/arch/arm/mm/proc-fa526.S b/arch/arm/mm/proc-fa526.S
|
||||
index 8120b6f4dbb83e..dddf833fe00078 100644
|
||||
--- a/arch/arm/mm/proc-fa526.S
|
||||
+++ b/arch/arm/mm/proc-fa526.S
|
||||
@@ -185,7 +185,7 @@ fa526_cr1_set:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __fa526_proc_info,#object
|
||||
__fa526_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-feroceon.S b/arch/arm/mm/proc-feroceon.S
|
||||
index bb6dc34d42a374..b12b76bc8d30ca 100644
|
||||
--- a/arch/arm/mm/proc-feroceon.S
|
||||
+++ b/arch/arm/mm/proc-feroceon.S
|
||||
@@ -571,7 +571,7 @@ feroceon_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro feroceon_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req, cache:req
|
||||
.type __\name\()_proc_info,#object
|
||||
diff --git a/arch/arm/mm/proc-mohawk.S b/arch/arm/mm/proc-mohawk.S
|
||||
index f083085788857b..d47d6c5cee63a6 100644
|
||||
--- a/arch/arm/mm/proc-mohawk.S
|
||||
+++ b/arch/arm/mm/proc-mohawk.S
|
||||
@@ -416,7 +416,7 @@ mohawk_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __88sv331x_proc_info,#object
|
||||
__88sv331x_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-sa110.S b/arch/arm/mm/proc-sa110.S
|
||||
index d5bc5d70256399..baba503ba81669 100644
|
||||
--- a/arch/arm/mm/proc-sa110.S
|
||||
+++ b/arch/arm/mm/proc-sa110.S
|
||||
@@ -196,7 +196,7 @@ sa110_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.type __sa110_proc_info,#object
|
||||
__sa110_proc_info:
|
||||
diff --git a/arch/arm/mm/proc-sa1100.S b/arch/arm/mm/proc-sa1100.S
|
||||
index be7b611c76c76a..75ebacc8e4e5cb 100644
|
||||
--- a/arch/arm/mm/proc-sa1100.S
|
||||
+++ b/arch/arm/mm/proc-sa1100.S
|
||||
@@ -239,7 +239,7 @@ sa1100_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro sa1100_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req
|
||||
.type __\name\()_proc_info,#object
|
||||
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S
|
||||
index c1c85eb3484f31..1dd0d5ca27da8f 100644
|
||||
--- a/arch/arm/mm/proc-v6.S
|
||||
+++ b/arch/arm/mm/proc-v6.S
|
||||
@@ -261,7 +261,7 @@ v6_crval:
|
||||
string cpu_elf_name, "v6"
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
/*
|
||||
* Match any ARMv6 processor core.
|
||||
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
|
||||
index c4e8006a1a8cdd..48e0ef6f0dccfe 100644
|
||||
--- a/arch/arm/mm/proc-v7.S
|
||||
+++ b/arch/arm/mm/proc-v7.S
|
||||
@@ -644,7 +644,7 @@ __v7_setup_stack:
|
||||
string cpu_elf_name, "v7"
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
/*
|
||||
* Standard v7 proc info content
|
||||
diff --git a/arch/arm/mm/proc-v7m.S b/arch/arm/mm/proc-v7m.S
|
||||
index 1a49d503eafc80..84459c1d31b87f 100644
|
||||
--- a/arch/arm/mm/proc-v7m.S
|
||||
+++ b/arch/arm/mm/proc-v7m.S
|
||||
@@ -93,7 +93,7 @@ ENTRY(cpu_cm7_proc_fin)
|
||||
ret lr
|
||||
ENDPROC(cpu_cm7_proc_fin)
|
||||
|
||||
- .section ".init.text", #alloc, #execinstr
|
||||
+ .section ".init.text", "ax"
|
||||
|
||||
__v7m_cm7_setup:
|
||||
mov r8, #(V7M_SCB_CCR_DC | V7M_SCB_CCR_IC| V7M_SCB_CCR_BP)
|
||||
@@ -177,7 +177,7 @@ ENDPROC(__v7m_setup)
|
||||
string cpu_elf_name "v7m"
|
||||
string cpu_v7m_name "ARMv7-M"
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro __v7m_proc name, initfunc, cache_fns = nop_cache_fns, hwcaps = 0, proc_fns = v7m_processor_functions
|
||||
.long 0 /* proc_info_list.__cpu_mm_mmu_flags */
|
||||
diff --git a/arch/arm/mm/proc-xsc3.S b/arch/arm/mm/proc-xsc3.S
|
||||
index 1ac0fbbe9f127f..42eaecc43cfeff 100644
|
||||
--- a/arch/arm/mm/proc-xsc3.S
|
||||
+++ b/arch/arm/mm/proc-xsc3.S
|
||||
@@ -496,7 +496,7 @@ xsc3_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro xsc3_proc_info name:req, cpu_val:req, cpu_mask:req
|
||||
.type __\name\()_proc_info,#object
|
||||
diff --git a/arch/arm/mm/proc-xscale.S b/arch/arm/mm/proc-xscale.S
|
||||
index bdb2b7749b0393..18ac5a1f892258 100644
|
||||
--- a/arch/arm/mm/proc-xscale.S
|
||||
+++ b/arch/arm/mm/proc-xscale.S
|
||||
@@ -610,7 +610,7 @@ xscale_crval:
|
||||
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc
|
||||
+ .section ".proc.info.init", "a"
|
||||
|
||||
.macro xscale_proc_info name:req, cpu_val:req, cpu_mask:req, cpu_name:req, cache
|
||||
.type __\name\()_proc_info,#object
|
|
@ -58,3 +58,5 @@ CONFIG_F2FS_FS_LZO=y
|
|||
CONFIG_F2FS_FS_LZ4=y
|
||||
CONFIG_F2FS_FS_ZSTD=y
|
||||
CONFIG_F2FS_FS_LZORLE=y
|
||||
# disabled as breaks build
|
||||
CONFIG_MXC_GPU_VIV=n
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
pkgname=mastodon
|
||||
_pkgname=$pkgname
|
||||
pkgver=4.2.3
|
||||
pkgver=4.2.9
|
||||
_gittag=v$pkgver
|
||||
pkgrel=0
|
||||
pkgdesc="Self-hosted social media and network server based on ActivityPub and OStatus"
|
||||
|
@ -19,9 +19,10 @@ depends="
|
|||
nodejs
|
||||
npm
|
||||
protobuf
|
||||
py3-elasticsearch
|
||||
redis
|
||||
ruby3.0
|
||||
ruby3.0-bundler
|
||||
ruby
|
||||
ruby-bundler
|
||||
yarn
|
||||
"
|
||||
makedepends="
|
||||
|
@ -34,7 +35,7 @@ makedepends="
|
|||
openssl-dev
|
||||
postgresql-dev
|
||||
protobuf-dev
|
||||
ruby3.0-dev
|
||||
ruby-dev
|
||||
yaml-dev
|
||||
zlib-dev
|
||||
"
|
||||
|
@ -192,7 +193,7 @@ assets() {
|
|||
}
|
||||
|
||||
sha512sums="
|
||||
65cbd5b586e189931d7c007c227f553ebbfa30f051443a3fff334260bd66751b0b583495b4add677eb66da0332e7943d30fb23944c0ad6af1af37598c337e41f mastodon-v4.2.3.tar.gz
|
||||
a90d7e68c1c0dd493119a1347f7093c466bc08c26d24fbee0dbf88735938bd79f5a6ba1dc0cc972cae08748a258a54b7bf9185f60f6e4c3ccc47bc484c609dc9 mastodon-v4.2.9.tar.gz
|
||||
36604cd630f0f5b4d88b630b1512cd26e922f859e5d19cbb85106ff29fc9048d2349f926d5c4b6947c655f67e60ec33e2f524a8154405a4369f283e00be7cdce mastodon.initd
|
||||
9e77061fbdebe90492398f8089a7d2612ff4b6e70b5462dd67330b66d9788cb0133eab38c372b1f27a7214aacdd9f7f70381d4ecc6e92c8c38d794404ae0f840 mastodon.web.initd
|
||||
6dacafca86dd39f6a6efa773cfe35b4632098175605a7c64488027237b01028d9785e50a3a0532b88ebf8f857c9a594c7b68f9e577b46e95104e7cffde51ccf8 mastodon.sidekiq.initd
|
||||
|
|
54
user/pdf4qt/APKBUILD
Normal file
54
user/pdf4qt/APKBUILD
Normal file
|
@ -0,0 +1,54 @@
|
|||
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
pkgname=pdf4qt
|
||||
pkgver=1.3.7
|
||||
pkgrel=0
|
||||
pkgdesc="Open source PDF editor"
|
||||
arch="x86_64"
|
||||
url="https://jakubmelka.github.io/"
|
||||
license="LGPL-3.0"
|
||||
# opt depends:
|
||||
# 'flite: Text-To-Speech using flite synthesizer',
|
||||
# 'libspeechd: Text-To-Speech using speechd synthesizer'
|
||||
makedepends="
|
||||
cmake
|
||||
openssl-dev
|
||||
libjpeg-turbo-dev
|
||||
openjpeg-dev
|
||||
onetbb-dev
|
||||
lcms2-dev
|
||||
freetype-dev
|
||||
zlib-dev
|
||||
musl-dev
|
||||
qt6-qtbase-dev
|
||||
qt6-qtsvg-dev
|
||||
qt6-qtspeech-dev
|
||||
qt6-qtdeclarative-dev
|
||||
qt6-qtmultimedia-dev
|
||||
"
|
||||
source="
|
||||
$pkgname-$pkgver.tar.gz::https://github.com/JakubMelka/PDF4QT/archive/refs/tags/v$pkgver.tar.gz
|
||||
CMakeListsMain.patch
|
||||
CMakeListsLib.patch
|
||||
FindLCMS2.cmake
|
||||
"
|
||||
builddir="$srcdir"/PDF4QT-$pkgver
|
||||
|
||||
build() {
|
||||
cmake -B build \
|
||||
-DCMAKE_BUILD_TYPE='Release' \
|
||||
-DCMAKE_INSTALL_PREFIX='/' \
|
||||
-Wno-dev \
|
||||
-DCMAKE_MODULE_PATH="$srcdir" \
|
||||
-DPDF4QT_INSTALL_DEPENDENCIES=0
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
sha512sums="
|
||||
86be79c901edee7ca9a0f534979b88ae1cf6dac3ecb0cd40b165354765dabdfcae94b288001e918e068a0bb4e61d8e9c90842d7f415659403979aa87d8830ee7 pdf4qt-1.3.7.tar.gz
|
||||
98392178a57739a3f5629aac27ac36f0aa0f33a508b2bd3d3de66c61a20c799a86a5dec6feabb250388c2e17319f7bdff05b34131d95c4c9ce8ee33d3dae3a8d CMakeListsMain.patch
|
||||
f0ee3675a70624f2ecefd8a157a68941aa7b18da03298186317c566e3b26a34e60991ce4c5501a619b7aa8744ab193b74417a84278f13eecd1ffaec28116dc30 CMakeListsLib.patch
|
||||
48cdc9f6cf0691baef2d80b423c62315772e51ac7b9bfa1c0c619315a11a6867e282fcf764c50290eb3c310d51be496502bb0e60b6a82e9bbcfd4f15e6ee1a73 FindLCMS2.cmake
|
||||
"
|
13
user/pdf4qt/CMakeListsLib.patch
Normal file
13
user/pdf4qt/CMakeListsLib.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
diff --git a/Pdf4QtLibCore/CMakeLists.txt b/Pdf4QtLibCore/CMakeLists.txt
|
||||
index 6f12727..e0fd971 100644
|
||||
--- a/Pdf4QtLibCore/CMakeLists.txt
|
||||
+++ b/Pdf4QtLibCore/CMakeLists.txt
|
||||
@@ -153,7 +153,7 @@ GENERATE_EXPORT_HEADER(Pdf4QtLibCore
|
||||
EXPORT_FILE_NAME "${CMAKE_BINARY_DIR}/${INSTALL_INCLUDEDIR}/pdf4qtlibcore_export.h")
|
||||
|
||||
target_link_libraries(Pdf4QtLibCore PRIVATE Qt6::Core Qt6::Gui Qt6::Xml Qt6::Svg)
|
||||
-target_link_libraries(Pdf4QtLibCore PRIVATE lcms2::lcms2)
|
||||
+target_link_libraries(Pdf4QtLibCore PRIVATE LCMS2::LCMS2)
|
||||
target_link_libraries(Pdf4QtLibCore PRIVATE OpenSSL::SSL OpenSSL::Crypto)
|
||||
target_link_libraries(Pdf4QtLibCore PRIVATE ZLIB::ZLIB)
|
||||
target_link_libraries(Pdf4QtLibCore PRIVATE Freetype::Freetype)
|
17
user/pdf4qt/CMakeListsMain.patch
Normal file
17
user/pdf4qt/CMakeListsMain.patch
Normal file
|
@ -0,0 +1,17 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 7dc98bc..ea790b1 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -64,10 +64,10 @@ endif()
|
||||
qt_standard_project_setup()
|
||||
|
||||
find_package(OpenSSL REQUIRED)
|
||||
-find_package(lcms REQUIRED)
|
||||
+find_package(LCMS2 REQUIRED)
|
||||
find_package(ZLIB REQUIRED)
|
||||
find_package(Freetype REQUIRED)
|
||||
-find_package(OpenJPEG CONFIG REQUIRED)
|
||||
+find_package(OpenJPEG REQUIRED)
|
||||
find_package(JPEG REQUIRED)
|
||||
find_package(PNG REQUIRED)
|
||||
|
105
user/pdf4qt/FindLCMS2.cmake
Normal file
105
user/pdf4qt/FindLCMS2.cmake
Normal file
|
@ -0,0 +1,105 @@
|
|||
# Copyright (C) 2021 Igalia S.L.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
|
||||
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
|
||||
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
# THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
#[=======================================================================[.rst:
|
||||
FindLCMS2
|
||||
---------
|
||||
|
||||
Find LCMS2 headers and libraries.
|
||||
|
||||
Imported Targets
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
``LCMS2::LCMS2``
|
||||
The LCMS2 library, if found.
|
||||
|
||||
Result Variables
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
This will define the following variables in your project:
|
||||
|
||||
``LCMS2_FOUND``
|
||||
true if (the requested version of) LCMS2 is available.
|
||||
``LCMS2_VERSION``
|
||||
the version of LCMS2.
|
||||
``LCMS2_LIBRARIES``
|
||||
the libraries to link against to use LCMS2.
|
||||
``LCMS2_INCLUDE_DIRS``
|
||||
where to find the LCMS2 headers.
|
||||
``LCMS2_COMPILE_OPTIONS``
|
||||
this should be passed to target_compile_options(), if the
|
||||
target is not used for linking
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
find_package(PkgConfig QUIET)
|
||||
if (PkgConfig_FOUND)
|
||||
pkg_check_modules(PC_LCMS2 QUIET lcms2)
|
||||
set(LCMS2_COMPILE_OPTIONS ${PC_LCMS2_CFLAGS_OTHER})
|
||||
set(LCMS2_VERSION ${PC_LCMS2_VERSION})
|
||||
endif ()
|
||||
|
||||
find_path(LCMS2_INCLUDE_DIR
|
||||
NAMES lcms2.h
|
||||
HINTS ${PC_LCMS2_INCLUDEDIR} ${PC_LCMS2_INCLUDE_DIRS} ${LCMS2_INCLUDE_DIR}
|
||||
PATH_SUFFIXES lcms2 liblcms2
|
||||
)
|
||||
|
||||
find_library(LCMS2_LIBRARY
|
||||
NAMES ${LCMS2_NAMES} lcms2 liblcms2 lcms-2 liblcms-2
|
||||
HINTS ${PC_LCMS2_LIBDIR} ${PC_LCMS2_LIBRARY_DIRS}
|
||||
PATH_SUFFIXES lcms2
|
||||
)
|
||||
|
||||
if (LCMS2_INCLUDE_DIR AND NOT LCMS_VERSION)
|
||||
file(READ ${LCMS2_INCLUDE_DIR}/lcms2.h LCMS2_VERSION_CONTENT)
|
||||
string(REGEX MATCH "#define[ \t]+LCMS_VERSION[ \t]+([0-9]+)[ \t]*\n" LCMS2_VERSION_MATCH ${LCMS2_VERSION_CONTENT})
|
||||
if (LCMS2_VERSION_MATCH)
|
||||
string(SUBSTRING ${CMAKE_MATCH_1} 0 1 LCMS2_VERSION_MAJOR)
|
||||
string(SUBSTRING ${CMAKE_MATCH_1} 1 2 LCMS2_VERSION_MINOR)
|
||||
set(LCMS2_VERSION "${LCMS2_VERSION_MAJOR}.${LCMS2_VERSION_MINOR}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(LCMS2
|
||||
FOUND_VAR LCMS2_FOUND
|
||||
REQUIRED_VARS LCMS2_LIBRARY LCMS2_INCLUDE_DIR
|
||||
VERSION_VAR LCMS2_VERSION
|
||||
)
|
||||
|
||||
if (LCMS2_LIBRARY AND NOT TARGET LCMS2::LCMS2)
|
||||
add_library(LCMS2::LCMS2 UNKNOWN IMPORTED GLOBAL)
|
||||
set_target_properties(LCMS2::LCMS2 PROPERTIES
|
||||
IMPORTED_LOCATION "${LCMS2_LIBRARY}"
|
||||
INTERFACE_COMPILE_OPTIONS "${LCMS2_COMPILE_OPTIONS}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${LCMS2_INCLUDE_DIR}"
|
||||
)
|
||||
endif ()
|
||||
|
||||
mark_as_advanced(LCMS2_INCLUDE_DIR LCMS2_LIBRARY)
|
||||
|
||||
if (LCMS2_FOUND)
|
||||
set(LCMS2_LIBRARIES ${LCMS2_LIBRARY})
|
||||
set(LCMS2_INCLUDE_DIRS ${LCMS2_INCLUDE_DIR})
|
||||
endif ()
|
|
@ -4,7 +4,7 @@
|
|||
pkgname=rm-extractor
|
||||
_gittag=9d37e9437affea379dadb59e646a819b3b9147dd
|
||||
pkgver=0.0.1
|
||||
pkgrel=2
|
||||
pkgrel=3
|
||||
pkgdesc="Image extractor for reMarkable firmware files"
|
||||
arch="noarch"
|
||||
url="https://github.com/ddvk/remarkable-update"
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
pkgname=rm-utils
|
||||
pkgver=0.0.1
|
||||
pkgrel=3
|
||||
pkgrel=4
|
||||
pkgdesc="Utility files for reMarkable tablet"
|
||||
arch="armv7"
|
||||
url="http://www.davisr.me/projects/parabola-rm/"
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||
|
||||
pkgname=rmfakecloud
|
||||
pkgver=0.0.16
|
||||
pkgver=0.0.17
|
||||
_gittag=v$pkgver
|
||||
pkgrel=0
|
||||
pkgdesc="A selfhosted cloud for the Remarkable Tablet"
|
||||
|
@ -51,7 +51,7 @@ package() {
|
|||
install -Dm755 "$srcdir"/rmfakecloud.openrc "$pkgdir"/etc/init.d/rmfakecloud
|
||||
}
|
||||
sha512sums="
|
||||
f752aaf22b5904523636fe21e8ed99a1d0a279e36e4b16aaa2a4ae0e0fd4531f0e64f035cec56f2141894e18ce05a732e73aba32a731a93fe8c563520dfe1f6e rmfakecloud-0.0.16.tar.gz
|
||||
2836364ba7a0c70b33f5914e357a87fb681275268a1cd5e1b6eba91037017c57f6a24b1bcecf9daa423c2588128ce591c2066d8af1d89eedccca231d24671748 rmfakecloud-0.0.17.tar.gz
|
||||
d5677cef282085cd6642a034dd258ffa294862aeb0ce81d6485a524a15564849bc4eb90a9d1fa4dbcf4eab69dcd893302aa06493fc8fad74d69200c2bdf246c0 rmfakecloud.conf
|
||||
891d0945886796132f951293e081046334857563b4ebae28a3aa5b6bc37768767c49ce102de645ed8340af2518de606be8bf6ecafeb6d189dd937970aa3e6498 rmfakecloud.openrc
|
||||
"
|
||||
|
|
|
@ -5,7 +5,7 @@ pkgname=u-boot-rm
|
|||
pkgver=2020.09
|
||||
_rm1tag=97b35fdddf0077abd2e0f0409b94ef20adbe8565
|
||||
_rm2tag=47c91918aa7724c16b6eaf87cf5dfbf4548eafc1
|
||||
pkgrel=8
|
||||
pkgrel=9
|
||||
pkgdesc="u-boot bootloader common files"
|
||||
url="https://www.denx.de/wiki/U-Boot/"
|
||||
arch="armv7"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
|
||||
pkgname=xf86-video-fbdev-rm
|
||||
pkgver=0.5.0
|
||||
pkgrel=2
|
||||
pkgrel=3
|
||||
pkgdesc="Video driver for framebuffer device with rM patches"
|
||||
url="https://www.x.org"
|
||||
arch="all"
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
pkgname=xochitl-bin
|
||||
pkgver=2.15.1.1189
|
||||
_pkgprefix=Xdvv3lBmE4
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="Image extractor for reMarkable firmware files"
|
||||
arch="armv7"
|
||||
url="https://archive.org/download/rm110/RM110/"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue