Compare commits

...

80 commits

Author SHA1 Message Date
88aa3353c8
backports/signal-desktop: upgrade to 7.33.0
Some checks failed
/ lint (pull_request) Successful in 30s
/ build-x86_64 (pull_request) Failing after 13m49s
/ deploy-x86_64 (pull_request) Has been skipped
/ deploy-aarch64 (pull_request) Has been skipped
/ build-aarch64 (pull_request) Failing after 27m26s
2024-11-15 13:38:26 -05:00
0281030f5d user/zotero: upgrade to 7.0.9 2024-10-31 16:37:51 +00:00
9b6ec1cf28
backports/signal-desktop: upgrade to 7.31.0
All checks were successful
/ lint (pull_request) Successful in 28s
/ deploy-x86_64 (pull_request) Successful in 30s
/ build-x86_64 (pull_request) Successful in 17m55s
/ build-aarch64 (pull_request) Successful in 1h1m25s
/ deploy-aarch64 (pull_request) Successful in 1m1s
2024-10-30 19:17:18 -04:00
87f6a19b06 backports/signal-desktop: upgrade to 7.30.0 2024-10-27 18:38:33 +00:00
5ce564a73a
user/zotero: upgrade to 7.0.8
All checks were successful
/ lint (pull_request) Successful in 27s
/ build-x86_64 (pull_request) Successful in 43m43s
/ deploy-x86_64 (pull_request) Successful in 29s
/ build-aarch64 (pull_request) Successful in 2h25m25s
/ deploy-aarch64 (pull_request) Successful in 1m2s
2024-10-22 08:44:56 -04:00
472f8f55a8 user/zotero: fix pdf reader 2024-10-17 03:33:44 +00:00
72cdc2045b user/zotero: upgrade to 7.0.7 2024-10-17 03:33:44 +00:00
eb5826e7b3
user/signal-desktop: upgrade to 7.29.0
All checks were successful
/ lint (pull_request) Successful in 28s
/ deploy-x86_64 (pull_request) Successful in 39s
/ build-x86_64 (pull_request) Successful in 23m44s
/ deploy-aarch64 (pull_request) Successful in 1m4s
/ build-aarch64 (pull_request) Successful in 1h10m28s
2024-10-16 20:37:04 -04:00
616a92e03d
backports/signal-desktop: upgrade to 7.28.0
All checks were successful
/ lint (pull_request) Successful in 27s
/ build-x86_64 (pull_request) Successful in 24m49s
/ deploy-x86_64 (pull_request) Successful in 28s
/ deploy-aarch64 (pull_request) Successful in 59s
/ build-aarch64 (pull_request) Successful in 1h6m44s
2024-10-09 18:24:17 -04:00
82e19a3d4a
testing/signal-desktop: upgrade to 7.27.0
All checks were successful
/ lint (pull_request) Successful in 38s
/ deploy-x86_64 (pull_request) Successful in 35s
/ build-x86_64 (pull_request) Successful in 36m22s
/ build-aarch64 (pull_request) Successful in 1h20m49s
/ deploy-aarch64 (pull_request) Successful in 1m1s
2024-10-07 09:40:15 -04:00
7c383aa8ea
backports/signal-desktop: upgrade to 7.26.0
All checks were successful
/ lint (pull_request) Successful in 30s
/ deploy-x86_64 (pull_request) Successful in 24s
/ build-x86_64 (pull_request) Successful in 29m20s
/ build-aarch64 (pull_request) Successful in 1h12m33s
/ deploy-aarch64 (pull_request) Successful in 59s
2024-09-27 17:30:39 -04:00
3ca73dbb66 user/zotero: upgrade to 7.0.6 2024-09-26 19:24:07 +00:00
73e22fe503
backports/signal-desktop: upgrade to 7.25.0
All checks were successful
/ lint (pull_request) Successful in 31s
/ deploy-x86_64 (pull_request) Successful in 26s
/ build-x86_64 (pull_request) Successful in 24m41s
/ deploy-aarch64 (pull_request) Successful in 1m0s
/ build-aarch64 (pull_request) Successful in 1h1m32s
2024-09-18 21:38:12 -04:00
99326806aa
backports/signal-desktop: upgrade to 7.24.1
All checks were successful
/ lint (pull_request) Successful in 32s
/ deploy-x86_64 (pull_request) Successful in 24s
/ build-x86_64 (pull_request) Successful in 22m34s
/ build-aarch64 (pull_request) Successful in 59m23s
/ deploy-aarch64 (pull_request) Successful in 58s
2024-09-13 10:31:12 -04:00
1ce95a5406
backports/signal-desktop: upgrade to 7.24.0
All checks were successful
/ lint (pull_request) Successful in 26s
/ deploy-x86_64 (pull_request) Successful in 25s
/ build-x86_64 (pull_request) Successful in 23m2s
/ build-aarch64 (pull_request) Successful in 1h1m54s
/ deploy-aarch64 (pull_request) Successful in 57s
2024-09-12 13:11:30 -04:00
a57b72bb5a
backports/signal-desktop: upgrade to 7.23.0
All checks were successful
/ lint (pull_request) Successful in 27s
/ deploy-x86_64 (pull_request) Successful in 26s
/ build-x86_64 (pull_request) Successful in 15m46s
/ deploy-aarch64 (pull_request) Successful in 59s
/ build-aarch64 (pull_request) Successful in 1h3m11s
2024-09-09 13:27:21 -04:00
23ffb6208a
backports/signal-desktop: upgrade to 7.22.2
All checks were successful
/ lint (pull_request) Successful in 43s
/ deploy-x86_64 (pull_request) Successful in 34s
/ build-x86_64 (pull_request) Successful in 21m43s
/ build-aarch64 (pull_request) Successful in 1h4m20s
/ deploy-aarch64 (pull_request) Successful in 59s
2024-09-05 16:17:26 -04:00
3e7c550f1a
forgejo: always create artifacts for build stage 2024-09-03 12:16:28 -04:00
d4020a9fb1
user/rstudio-desktop: enable build
Some checks failed
/ lint (pull_request) Successful in 28s
/ deploy-aarch64 (pull_request) Failing after 2m2s
/ build-aarch64 (pull_request) Successful in 1m9s
/ deploy-x86_64 (pull_request) Has been cancelled
/ build-x86_64 (pull_request) Has been cancelled
2024-09-03 11:46:32 -04:00
ed1236a577 user/zotero: upgrade to 7.0.3
All checks were successful
/ lint (pull_request) Successful in 27s
/ build-x86_64 (pull_request) Successful in 41m42s
/ deploy-x86_64 (pull_request) Successful in 27s
/ deploy-aarch64 (pull_request) Successful in 59s
/ build-aarch64 (pull_request) Successful in 2h21m2s
2024-08-27 13:28:46 +00:00
0e24de75be
forgejo-ci: build.sh is now local rather than patched
All checks were successful
/ lint (pull_request) Successful in 34s
/ deploy-x86_64 (pull_request) Successful in 26s
/ build-x86_64 (pull_request) Successful in 2m33s
/ build-aarch64 (pull_request) Successful in 9m1s
/ deploy-aarch64 (pull_request) Successful in 53s
2024-08-26 11:05:17 -04:00
48a860beef
forgejo-ci: fix double v in repo 2024-08-26 11:05:16 -04:00
cf413eb7cf
user/rmfakecloud: upgrade to 0.0.19 2024-08-26 11:05:11 -04:00
bddc037752
forgejo-ci: use new forge repo 2024-08-21 10:56:07 -04:00
15bbca20ca
README: update name 2024-08-12 12:56:25 -04:00
d28c73b877
README: update upstream 2024-08-12 12:55:26 -04:00
7c746983b3
README: update to use forge repo 2024-08-12 12:53:33 -04:00
bdb8bc8518
forgejo: initial implementation 2024-08-12 12:44:12 -04:00
fd7336f6d2
gitlab-ci: drop in favor of forgejo actions 2024-08-12 12:44:02 -04:00
048aa7ee77
README.md: new repo location 2024-08-10 16:34:20 -04:00
1343a7cbed
gitlab-ci: use git-annex instead of git-lfs 2024-08-10 11:34:27 -04:00
0069af2d1c
Update README.md 2024-08-10 11:31:59 -04:00
45035c9a28 user/forgejo-aneksajo: new aport 2024-08-10 04:54:01 +00:00
62c454c37b README.md: update for codeberg 2024-08-10 04:54:01 +00:00
9ab8769319
backports/forgejo-runner: new aport 2024-08-10 00:30:04 -04:00
c8865c2e02
user/zotero: upgrade to 7.0.0 2024-08-09 10:53:08 -04:00
3da559ea48
backports/calibre: new aport 2024-08-08 11:13:22 -04:00
684b9977e3
backports/py3-apsw: new aport 2024-08-08 11:13:14 -04:00
ec7c2275c4
backports/py3-html5-parser: new aport 2024-08-08 11:13:00 -04:00
e608d5e5b2 backports/freetube: upgrade to 0.21.3 2024-08-07 21:32:20 +00:00
b6364ff724
backports/looking-glass: upgrade to 7b_git20240607 2024-08-07 15:33:40 -04:00
20e50f06fc
backports/looking-glass: new aport 2024-07-30 23:37:50 -04:00
55561483a6 user/gitaly: upgrade to 17.0.4 2024-07-27 05:02:57 +00:00
60ff104dc6 user/gitlab-pages: upgrade to 17.0.4 2024-07-27 05:02:57 +00:00
3222ade97a user/gitlab-foss: upgrade to 17.0.4, fix initd 2024-07-27 05:02:57 +00:00
1ee7414bcc backports/signal-desktop: upgrade to 7.14.0 2024-07-26 16:45:55 +00:00
85a029dd50
user/mastodon: fix initd scripts 2024-07-11 07:08:10 -04:00
9e69051fd4
user/mastodon: upgrade to 4.2.10 2024-07-04 22:52:47 -04:00
c3e241d3f6
user/gitlab-foss: upgrade to 17.0.3 2024-07-03 16:57:18 -04:00
fd335bb018
user/gitlab-pages: upgrade to 17.0.3 2024-07-03 16:57:14 -04:00
4dabf671a2
user/gitaly: upgrade to 17.0.3 2024-07-03 16:57:09 -04:00
1dfc9f1356
user/gitlab-shell: upgrade to 14.36.0 2024-07-03 16:57:01 -04:00
e6255e8cd5
user/authentik: add custom css to config dir 2024-06-30 23:51:52 -04:00
0b65593908
user/authentik: upgrade to 2024.4.3 2024-06-30 10:29:59 -04:00
f4de0e83cd
user/gitlab-pages: upgrade to 17.0.2 2024-06-14 08:33:40 -04:00
4bf996ab56
user/gitaly: upgrade to 17.0.2 2024-06-14 08:33:38 -04:00
7c9023e361
user/gitlab-foss: upgrade to 17.0.2 2024-06-14 08:33:34 -04:00
50edf4baf8 user/gitlab-foss: upgrade to 16.11.4 2024-06-13 22:07:28 +00:00
813c564a5c user/gitlab-pages: upgrade to 16.11.4 2024-06-13 22:07:28 +00:00
9bddda28b9 user/gitaly: upgrade to 16.11.4 2024-06-13 22:07:28 +00:00
83679826ca
user/php82-pecl-inotify: new aport 2024-06-13 16:20:16 -04:00
04cb97c9e8
user/php83-pecl-inotify: new aport 2024-06-13 13:47:08 -04:00
3fd57eb3c1 user/authentik: add missing depends 2024-06-13 03:12:29 +00:00
4aec78a3b8 user/py3-django-rest-framework: fix to version 3.14.0 2024-06-13 03:12:29 +00:00
a490288341 user/py3-scim2-filter-parser: new aport 2024-06-13 03:12:29 +00:00
78dd460279 user/py3-tenant-schemas-celery: new aports 2024-06-13 03:12:29 +00:00
177d06fdcf user/py3-django-tenants: new aports 2024-06-13 03:12:29 +00:00
3f0fa05986 user/mastodon: upgrade to 4.2.9 2024-06-13 00:32:37 +00:00
7f3d871018
user/gitlab-pages: upgrade to 16.9.8 2024-06-07 14:14:23 -04:00
0a949f694d
user/gitaly: upgrade to 16.9.8 2024-06-07 14:14:22 -04:00
fe1a2bc74e
user/gitlab-shell: upgrade to 14.35.0 2024-06-07 14:14:18 -04:00
bc9e04fdd0
user/gitlab-foss: upgrade to 16.9.8 2024-06-07 14:13:39 -04:00
0557e612ef backports/signal-desktop: upgrade to 7.11.0 2024-06-04 16:15:10 +00:00
9104c894d8 user/zotero: upgrade to 7.0.0_beta83 2024-06-04 15:59:19 +00:00
5e339cfb4d user/zotero: enable build 2024-06-04 15:59:19 +00:00
1e15c3796c
user/peertube: enable build 2024-06-04 09:33:20 -04:00
1cf4e12629 user/firefly-iii: use php83 2024-06-04 13:27:36 +00:00
2bb75a1df8 unmaintained/firefly-iii-plaid-connector: move from user 2024-06-04 13:27:36 +00:00
cc7154fe54 user/gitlab-foss: enable build 2024-06-04 13:15:08 +00:00
684c44bc00
user/mastodon: enable build 2024-06-03 23:02:55 -04:00
86 changed files with 8979 additions and 2108 deletions

View file

@ -1,27 +1,26 @@
#!/bin/sh #!/bin/sh
# shellcheck disable=SC3043 # shellcheck disable=SC3043
. $CI_PROJECT_DIR/.gitlab/bin/functions.sh . /usr/local/lib/functions.sh
# shellcheck disable=SC3040 # shellcheck disable=SC3040
set -eu -o pipefail set -eu -o pipefail
readonly APORTSDIR=$CI_PROJECT_DIR readonly APORTSDIR=$CI_PROJECT_DIR
readonly REPOS="cross backports user testing community" readonly REPOS="backports user"
readonly ALPINE_REPOS="main community" readonly ALPINE_REPOS="main community testing"
readonly ARCH=$(apk --print-arch) readonly ARCH=$(apk --print-arch)
# gitlab variables # gitlab variables
readonly BASEBRANCH=$CI_MERGE_REQUEST_TARGET_BRANCH_NAME readonly BASEBRANCH=$CI_MERGE_REQUEST_TARGET_BRANCH_NAME
: "${REPODEST:=$HOME/packages}" : "${REPODEST:=$HOME/packages}"
: "${MIRROR:=https://lab.ilot.io/ayakael/repo-apk/-/raw}" : "${MIRROR:=https://ayakael.net/api/packages/forge/alpine}"
: "${ALPINE_MIRROR:=http://dl-cdn.alpinelinux.org/alpine}" : "${ALPINE_MIRROR:=http://dl-cdn.alpinelinux.org/alpine}"
: "${MAX_ARTIFACT_SIZE:=300000000}" #300M : "${MAX_ARTIFACT_SIZE:=300000000}" #300M
: "${CI_DEBUG_BUILD:=}" : "${CI_DEBUG_BUILD:=}"
: "${CI_ALPINE_BUILD_OFFSET:=0}" : "${CI_ALPINE_BUILD_OFFSET:=0}"
: "${CI_ALPINE_BUILD_LIMIT:=9999}" : "${CI_ALPINE_BUILD_LIMIT:=9999}"
: "${CI_ALPINE_TARGET_ARCH:=$(uname -m)}"
msg() { msg() {
local color=${2:-green} local color=${2:-green}
@ -71,7 +70,7 @@ report() {
get_release() { get_release() {
case $BASEBRANCH in case $BASEBRANCH in
v*) echo "${BASEBRANCH%-*}";; v*) echo "$BASEBRANCH";;
edge) echo edge;; edge) echo edge;;
*) die "Branch \"$BASEBRANCH\" not supported!" *) die "Branch \"$BASEBRANCH\" not supported!"
esac esac
@ -80,9 +79,8 @@ get_release() {
build_aport() { build_aport() {
local repo="$1" aport="$2" local repo="$1" aport="$2"
cd "$APORTSDIR/$repo/$aport" cd "$APORTSDIR/$repo/$aport"
export CHOST=$CI_ALPINE_TARGET_ARCH
if abuild -r 2>&1 | report "build-$aport"; then if abuild -r 2>&1 | report "build-$aport"; then
checkapk | report "checkapk-$aport" || true checkapk 2>&1 | report "checkapk-$aport" || true
aport_ok="$aport_ok $repo/$aport" aport_ok="$aport_ok $repo/$aport"
else else
aport_ng="$aport_ng $repo/$aport" aport_ng="$aport_ng $repo/$aport"
@ -92,12 +90,6 @@ build_aport() {
check_aport() { check_aport() {
local repo="$1" aport="$2" local repo="$1" aport="$2"
cd "$APORTSDIR/$repo/$aport" cd "$APORTSDIR/$repo/$aport"
export CHOST=$CI_ALPINE_TARGET_ARCH
# TODO: this enables crossbuild only on user, this should be cleaner
if [ "$repo" != "user" ] && [ "$repo" != "backports" ] && [ "$CI_ALPINE_TARGET_ARCH" != "$ARCH" ]; then
aport_na="$aport_na $repo/$aport"
return 1
fi
if ! abuild check_arch 2>/dev/null; then if ! abuild check_arch 2>/dev/null; then
aport_na="$aport_na $repo/$aport" aport_na="$aport_na $repo/$aport"
return 1 return 1
@ -110,16 +102,13 @@ set_repositories_for() {
release=$(get_release) release=$(get_release)
for repo in $REPOS; do for repo in $REPOS; do
[ "$repo" = "non-free" ] && continue
[ "$release" == "edge" ] && [ "$repo" == "backports" ] && continue
repos="$repos $MIRROR/$release/$repo $REPODEST/$repo" repos="$repos $MIRROR/$release/$repo $REPODEST/$repo"
[ "$repo" = "$target_repo" ] && break [ "$repo" = "$target_repo" ] && break
done done
sudo sh -c "printf '%s\n' $repos >> /etc/apk/repositories" doas sh -c "printf '%s\n' $repos >> /etc/apk/repositories"
sudo apk update || true doas apk update
if [ "$CI_ALPINE_TARGET_ARCH" != "$ARCH" ]; then
sudo sh -c "printf '%s\n' $repos >> $HOME/sysroot-$CI_ALPINE_TARGET_ARCH/etc/apk/repositories"
sudo cp -R /etc/apk/keys/* $HOME/sysroot-$CI_ALPINE_TARGET_ARCH/etc/apk/keys/.
sudo apk --root=$HOME/sysroot-$CI_ALPINE_TARGET_ARCH update || true
fi
} }
apply_offset_limit() { apply_offset_limit() {
@ -139,22 +128,10 @@ setup_system() {
[ "$release" != "edge" ] && [ "$repo" == "testing" ] && continue [ "$release" != "edge" ] && [ "$repo" == "testing" ] && continue
repos="$repos $ALPINE_MIRROR/$release/$repo" repos="$repos $ALPINE_MIRROR/$release/$repo"
done done
repos="$repos $MIRROR/$release/cross" doas sh -c "printf '%s\n' $repos > /etc/apk/repositories"
sudo sh -c "printf '%s\n' $repos > /etc/apk/repositories" doas apk -U upgrade -a || apk fix || die "Failed to up/downgrade system"
sudo apk -U upgrade -a || sudo apk fix || die "Failed to up/downgrade system" abuild-keygen -ain
if [ "$CI_ALPINE_TARGET_ARCH" != "$ARCH" ]; then doas sed -i -E 's/export JOBS=[0-9]+$/export JOBS=$(nproc)/' /etc/abuild.conf
sudo apk add gcc-$CI_ALPINE_TARGET_ARCH
fi
gitlab_key_to_rsa $ABUILD_KEY rsa-private $HOME/.abuild/$ABUILD_KEY_NAME.rsa
gitlab_key_to_rsa $ABUILD_KEY_PUB rsa-public $HOME/.abuild/$ABUILD_KEY_NAME.rsa.pub
chmod 700 $HOME/.abuild/$ABUILD_KEY_NAME.rsa
echo "PACKAGER_PRIVKEY=$HOME/.abuild/$ABUILD_KEY_NAME.rsa" >> $HOME/.abuild/abuild.conf
sudo cp $HOME/.abuild/$ABUILD_KEY_NAME.rsa.pub /etc/apk/keys/$ABUILD_KEY_NAME.rsa.pub
# patch abuild for crosscompiling
sudo patch -p1 -d / -i $CI_PROJECT_DIR/.gitlab/patches/abuild-cross.patch
sudo sed -i -E 's/export JOBS=[0-9]+$/export JOBS=$(nproc)/' /etc/abuild.conf
( . /etc/abuild.conf && echo "Building with $JOBS jobs" ) ( . /etc/abuild.conf && echo "Building with $JOBS jobs" )
mkdir -p "$REPODEST" mkdir -p "$REPODEST"
git config --global init.defaultBranch master git config --global init.defaultBranch master
@ -203,7 +180,7 @@ sysinfo || true
setup_system || die "Failed to setup system" setup_system || die "Failed to setup system"
# git no longer allows to execute in repositories owned by different users # git no longer allows to execute in repositories owned by different users
sudo chown -R $USER: . doas chown -R buildozer: .
fetch_flags="-qn" fetch_flags="-qn"
debugging && fetch_flags="-v" debugging && fetch_flags="-v"
@ -226,7 +203,6 @@ build_start=$CI_ALPINE_BUILD_OFFSET
build_limit=$CI_ALPINE_BUILD_LIMIT build_limit=$CI_ALPINE_BUILD_LIMIT
for repo in $(changed_repos); do for repo in $(changed_repos); do
mkdir -p "$APORTSDIR"/logs "$APORTSDIR"/packages "$APORTSDIR"/keys
set_repositories_for "$repo" set_repositories_for "$repo"
built_aports=0 built_aports=0
changed_aports_in_repo=$(changed_aports "$repo") changed_aports_in_repo=$(changed_aports "$repo")
@ -267,7 +243,7 @@ for ok in $aport_ok; do
done done
for na in $aport_na; do for na in $aport_na; do
msg "$na: disabled for $CI_ALPINE_TARGET_ARCH" yellow msg "$na: disabled for $ARCH" yellow
done done
for ng in $aport_ng; do for ng in $aport_ng; do
@ -281,3 +257,4 @@ if [ "$failed" = true ]; then
elif [ -z "$aport_ok" ]; then elif [ -z "$aport_ok" ]; then
msg "No packages found to be built." yellow msg "No packages found to be built." yellow
fi fi

26
.forgejo/bin/deploy.sh Executable file
View file

@ -0,0 +1,26 @@
#!/bin/sh
# shellcheck disable=SC3040
set -eu -o pipefail
readonly REPOS="backports user"
readonly BASEBRANCH=$GITHUB_BASE_REF
readonly TARGET_REPO=$CI_ALPINE_REPO
apkgs=$(find package -type f -name "*.apk")
for apk in $apkgs; do
branch=$(echo $apk | awk -F '/' '{print $2}')
arch=$(echo $apk | awk -F '/' '{print $3}')
name=$(echo $apk | awk -F '/' '{print $4}')
echo "Sending $name of arch $arch to $TARGET_REPO/$BASEBRANCH/$branch"
return=$(curl -s --user $FORGE_REPO_USER:$FORGE_REPO_TOKEN --upload-file $apk $TARGET_REPO/$BASEBRANCH/$branch 2>&1)
echo $return
if [ "$return" == "package file already exists" ]; then
echo "Package already exists, refreshing..."
curl -s --user $FORGE_REPO_USER:$FORGE_REPO_TOKEN -X DELETE $TARGET_REPO/$BASEBRANCH/$branch/$arch/$name
curl -s --user $FORGE_REPO_USER:$FORGE_REPO_TOKEN --upload-file $apk $TARGET_REPO/$BASEBRANCH/$branch
fi
done

View file

@ -0,0 +1,52 @@
on:
pull_request:
types: [ assigned, opened, synchronize, reopened ]
jobs:
build-aarch64:
runs-on: aarch64
container:
image: alpinelinux/alpine-gitlab-ci:latest
env:
CI_PROJECT_DIR: ${{ github.workspace }}
CI_DEBUG_BUILD: ${{ runner.debug }}
CI_MERGE_REQUEST_PROJECT_URL: ${{ github.server_url }}/${{ github.repository }}
CI_MERGE_REQUEST_TARGET_BRANCH_NAME: ${{ github.base_ref }}
steps:
- name: Environment setup
run: |
doas apk add nodejs git patch curl
cd /etc/apk/keys
doas curl -JO https://ayakael.net/api/packages/forge/alpine/key
- name: Repo pull
uses: actions/checkout@v4
with:
fetch-depth: 500
- name: Package build
run: |
${{ github.workspace }}/.forgejo/bin/build.sh
touch packages/dummy
- name: Package upload
uses: forgejo/upload-artifact@v3
with:
name: package
path: packages
deploy-aarch64:
needs: [build-aarch64]
runs-on: aarch64
container:
image: alpine:latest
env:
CI_ALPINE_REPO: 'https://ayakael.net/api/packages/forge/alpine'
FORGE_REPO_TOKEN: ${{ secrets.FORGE_REPO_TOKEN }}
FORGE_REPO_USER: ${{ vars.FORGE_REPO_USER }}
steps:
- name: Setting up environment
run: apk add nodejs curl findutils git gawk
- name: Repo pull
uses: actions/checkout@v4
- name: Package download
uses: forgejo/download-artifact@v3
- name: Package deployment
run: ${{ github.workspace }}/.forgejo/bin/deploy.sh

View file

@ -0,0 +1,52 @@
on:
pull_request:
types: [ assigned, opened, synchronize, reopened ]
jobs:
build-x86_64:
runs-on: x86_64
container:
image: alpinelinux/alpine-gitlab-ci:latest
env:
CI_PROJECT_DIR: ${{ github.workspace }}
CI_DEBUG_BUILD: ${{ runner.debug }}
CI_MERGE_REQUEST_PROJECT_URL: ${{ github.server_url }}/${{ github.repository }}
CI_MERGE_REQUEST_TARGET_BRANCH_NAME: ${{ github.base_ref }}
steps:
- name: Environment setup
run: |
doas apk add nodejs git patch curl
cd /etc/apk/keys
doas curl -JO https://ayakael.net/api/packages/forge/alpine/key
- name: Repo pull
uses: actions/checkout@v4
with:
fetch-depth: 500
- name: Package build
run: |
${{ github.workspace }}/.forgejo/bin/build.sh
touch packages/dummy
- name: Package upload
uses: forgejo/upload-artifact@v3
with:
name: package
path: packages
deploy-x86_64:
needs: [build-x86_64]
runs-on: x86_64
container:
image: alpine:latest
env:
CI_ALPINE_REPO: 'https://ayakael.net/api/packages/forge/alpine'
FORGE_REPO_TOKEN: ${{ secrets.FORGE_REPO_TOKEN }}
FORGE_REPO_USER: ${{ vars.FORGE_REPO_USER }}
steps:
- name: Setting up environment
run: apk add nodejs curl findutils git gawk
- name: Repo pull
uses: actions/checkout@v4
- name: Package download
uses: forgejo/download-artifact@v3
- name: Package deployment
run: ${{ github.workspace }}/.forgejo/bin/deploy.sh

View file

@ -0,0 +1,21 @@
on:
pull_request:
types: [ assigned, opened, synchronize, reopened ]
jobs:
lint:
run-name: lint
runs-on: x86_64
container:
image: alpinelinux/apkbuild-lint-tools:latest
env:
CI_PROJECT_DIR: ${{ github.workspace }}
CI_DEBUG_BUILD: ${{ runner.debug }}
CI_MERGE_REQUEST_PROJECT_URL: ${{ github.server_url }}/${{ github.repository }}
CI_MERGE_REQUEST_TARGET_BRANCH_NAME: ${{ github.base_ref }}
steps:
- run: doas apk add nodejs git
- uses: actions/checkout@v4
with:
fetch-depth: 500
- run: lint

View file

@ -1,109 +0,0 @@
stages:
- verify
- build
- deploy
variables:
GIT_STRATEGY: clone
GIT_DEPTH: "500"
lint:
stage: verify
interruptible: true
script:
- |
sudo apk add shellcheck atools sudo abuild
export PATH="$PATH:$CI_PROJECT_DIR/.gitlab/bin"
lint
allow_failure: true
only:
- merge_requests
tags:
- apk-$CI_MERGE_REQUEST_TARGET_BRANCH_NAME-x86_64
.build:
stage: build
interruptible: true
script:
- |
sudo apk add alpine-sdk lua-aports sudo
sudo addgroup $USER abuild
export PATH="$PATH:$CI_PROJECT_DIR/.gitlab/bin"
sudo -Eu $USER build.sh
artifacts:
paths:
- packages/
- keys/
- logs/
expire_in: 7 days
when: always
only:
- merge_requests
.cross:
stage: build
interruptible: true
script:
- |
sudo apk add alpine-sdk lua-aports sudo gzip xz qemu-$CI_QEMU_TARGET_ARCH
sudo addgroup $USER abuild
export PATH="$PATH:$CI_PROJECT_DIR/.gitlab/bin"
build-rootfs.sh alpine${CI_MERGE_REQUEST_TARGET_BRANCH_NAME/v} $CI_ALPINE_TARGET_ARCH --rootfsdir $HOME/sysroot-$CI_ALPINE_TARGET_ARCH
cp /etc/apk/repositories $HOME/sysroot-$CI_ALPINE_TARGET_ARCH/etc/apk/.
sudo -Eu $USER CHOST=$CI_TARGET_ALPINE_ARCH build.sh
artifacts:
paths:
- packages/
- keys/
- logs/
expire_in: 7 days
when: always
only:
- merge_requests
build-x86_64:
extends: .build
when: always
tags:
- apk-$CI_MERGE_REQUEST_TARGET_BRANCH_NAME-x86_64
build-aarch64:
extends: .build
when: always
tags:
- apk-$CI_MERGE_REQUEST_TARGET_BRANCH_NAME-aarch64
build-ppc64le:
extends: .build
when: manual
tags:
- apk-$CI_MERGE_REQUEST_TARGET_BRANCH_NAME-ppc64le
build-s390x:
extends: .build
when: manual
tags:
- apk-$CI_MERGE_REQUEST_TARGET_BRANCH_NAME-s390x
build-armv7:
extends: .cross
when: manual
tags:
- apk-$CI_MERGE_REQUEST_TARGET_BRANCH_NAME-x86_64
variables:
CI_ALPINE_TARGET_ARCH: armv7
CI_QEMU_TARGET_ARCH: arm
push:
interruptible: true
stage: deploy
script:
- |
sudo apk add abuild git-lfs findutils
export PATH="$PATH:$CI_PROJECT_DIR/.gitlab/bin"
push.sh
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
when: manual
tags:
- repo

View file

@ -1,111 +0,0 @@
#!/bin/sh
set -e
arch=
builddir=
checkdepends=
depends=
depends_dev=
depends_doc=
depends_libs=
depends_openrc=
depends_static=
install=
install_if=
langdir=
ldpath=
license=
makedepends=
makedepends_build=
makedepends_host=
md5sums=
options=
patch_args=
pkgbasedir=
pkgdesc=
pkgdir=
pkgname=
pkgrel=
pkgver=
pkggroups=
pkgusers=
provides=
provider_priority=
replaces=
sha256sums=
sha512sums=
sonameprefix=
source=
srcdir=
startdir=
subpackages=
subpkgdir=
subpkgname=
triggers=
url=
# abuild.conf
CFLAGS=
CXXFLAGS=
CPPFLAGS=
LDFLAGS=
JOBS=
MAKEFLAGS=
CMAKE_CROSSOPTS=
. ./APKBUILD
: "$arch"
: "$builddir"
: "$checkdepends"
: "$depends"
: "$depends_dev"
: "$depends_doc"
: "$depends_libs"
: "$depends_openrc"
: "$depends_static"
: "$install"
: "$install_if"
: "$langdir"
: "$ldpath"
: "$license"
: "$makedepends"
: "$makedepends_build"
: "$makedepends_host"
: "$md5sums"
: "$options"
: "$patch_args"
: "$pkgbasedir"
: "$pkgdesc"
: "$pkgdir"
: "$pkgname"
: "$pkgrel"
: "$pkgver"
: "$pkggroups"
: "$pkgusers"
: "$provides"
: "$provider_priority"
: "$replaces"
: "$sha256sums"
: "$sha512sums"
: "$sonameprefix"
: "$source"
: "$srcdir"
: "$startdir"
: "$subpackages"
: "$subpkgdir"
: "$subpkgname"
: "$triggers"
: "$url"
# abuild.conf
: "$CFLAGS"
: "$CXXFLAGS"
: "$CPPFLAGS"
: "$LDFLAGS"
: "$JOBS"
: "$MAKEFLAGS"
: "$CMAKE_CROSSOPTS"

View file

@ -1,16 +0,0 @@
#!/bin/sh
shellcheck -s ash \
-e SC3043 \
-e SC3057 \
-e SC3060 \
-e SC2016 \
-e SC2086 \
-e SC2169 \
-e SC2155 \
-e SC2100 \
-e SC2209 \
-e SC2030 \
-e SC2031 \
-e SC1090 \
-xa $CI_PROJECT_DIR/.gitlab/bin/APKBUILD_SHIM

View file

@ -1,556 +0,0 @@
#!/usr/bin/env bash
# Availabl here: https://lab.ilot.io/dotnet/arcade/-/blob/7f6d9796cc7f594772f798358dbdd8c69b6a97af/eng/common/cross/build-rootfs.sh
# Only modification: qemu-$arch-static becomes qemu-$arch
set -e
usage()
{
echo "Usage: $0 [BuildArch] [CodeName] [lldbx.y] [llvmx[.y]] [--skipunmount] --rootfsdir <directory>]"
echo "BuildArch can be: arm(default), arm64, armel, armv6, ppc64le, riscv64, s390x, x64, x86"
echo "CodeName - optional, Code name for Linux, can be: xenial(default), zesty, bionic, alpine"
echo " for alpine can be specified with version: alpineX.YY or alpineedge"
echo " for FreeBSD can be: freebsd12, freebsd13"
echo " for illumos can be: illumos"
echo " for Haiku can be: haiku."
echo "lldbx.y - optional, LLDB version, can be: lldb3.9(default), lldb4.0, lldb5.0, lldb6.0 no-lldb. Ignored for alpine and FreeBSD"
echo "llvmx[.y] - optional, LLVM version for LLVM related packages."
echo "--skipunmount - optional, will skip the unmount of rootfs folder."
echo "--use-mirror - optional, use mirror URL to fetch resources, when available."
echo "--jobs N - optional, restrict to N jobs."
exit 1
}
__CodeName=xenial
__CrossDir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
__BuildArch=arm
__AlpineArch=armv7
__FreeBSDArch=arm
__FreeBSDMachineArch=armv7
__IllumosArch=arm7
__QEMUArch=arm
__UbuntuArch=armhf
__UbuntuRepo="http://ports.ubuntu.com/"
__LLDB_Package="liblldb-3.9-dev"
__SkipUnmount=0
# base development support
__UbuntuPackages="build-essential"
__AlpinePackages="alpine-base"
__AlpinePackages+=" build-base"
# symlinks fixer
__UbuntuPackages+=" symlinks"
# runtime dependencies
__UbuntuPackages+=" libicu-dev"
__UbuntuPackages+=" liblttng-ust-dev"
__UbuntuPackages+=" libunwind8-dev"
__UbuntuPackages+=" libnuma-dev"
# runtime libraries' dependencies
__UbuntuPackages+=" libcurl4-openssl-dev"
__UbuntuPackages+=" libkrb5-dev"
__UbuntuPackages+=" libssl-dev"
__UbuntuPackages+=" zlib1g-dev"
__FreeBSDBase="12.3-RELEASE"
__FreeBSDPkg="1.17.0"
__FreeBSDABI="12"
__FreeBSDPackages="libunwind"
__FreeBSDPackages+=" icu"
__FreeBSDPackages+=" libinotify"
__FreeBSDPackages+=" openssl"
__FreeBSDPackages+=" krb5"
__FreeBSDPackages+=" terminfo-db"
__IllumosPackages="icu"
__IllumosPackages+=" mit-krb5"
__IllumosPackages+=" openssl"
__IllumosPackages+=" zlib"
__HaikuPackages="gmp"
__HaikuPackages+=" gmp_devel"
__HaikuPackages+=" krb5"
__HaikuPackages+=" krb5_devel"
__HaikuPackages+=" libiconv"
__HaikuPackages+=" libiconv_devel"
__HaikuPackages+=" llvm12_libunwind"
__HaikuPackages+=" llvm12_libunwind_devel"
__HaikuPackages+=" mpfr"
__HaikuPackages+=" mpfr_devel"
# ML.NET dependencies
__UbuntuPackages+=" libomp5"
__UbuntuPackages+=" libomp-dev"
__Keyring=
__UseMirror=0
__UnprocessedBuildArgs=
while :; do
if [[ "$#" -le 0 ]]; then
break
fi
lowerI="$(echo "$1" | tr "[:upper:]" "[:lower:]")"
case $lowerI in
-\?|-h|--help)
usage
exit 1
;;
arm)
__BuildArch=arm
__UbuntuArch=armhf
__AlpineArch=armv7
__QEMUArch=arm
;;
arm64)
__BuildArch=arm64
__UbuntuArch=arm64
__AlpineArch=aarch64
__QEMUArch=aarch64
__FreeBSDArch=arm64
__FreeBSDMachineArch=aarch64
;;
armel)
__BuildArch=armel
__UbuntuArch=armel
__UbuntuRepo="http://ftp.debian.org/debian/"
__CodeName=jessie
;;
armv6)
__BuildArch=armv6
__UbuntuArch=armhf
__QEMUArch=arm
__UbuntuRepo="http://raspbian.raspberrypi.org/raspbian/"
__CodeName=buster
__LLDB_Package="liblldb-6.0-dev"
if [[ -e "/usr/share/keyrings/raspbian-archive-keyring.gpg" ]]; then
__Keyring="--keyring /usr/share/keyrings/raspbian-archive-keyring.gpg"
fi
;;
riscv64)
__BuildArch=riscv64
__AlpineArch=riscv64
__QEMUArch=riscv64
__UbuntuArch=riscv64
__UbuntuRepo="http://deb.debian.org/debian-ports"
__UbuntuPackages="${__UbuntuPackages// libunwind8-dev/}"
unset __LLDB_Package
if [[ -e "/usr/share/keyrings/debian-ports-archive-keyring.gpg" ]]; then
__Keyring="--keyring /usr/share/keyrings/debian-ports-archive-keyring.gpg --include=debian-ports-archive-keyring"
fi
;;
ppc64le)
__BuildArch=ppc64le
__AlpineArch=ppc64le
__QEMUArch=ppc64le
__UbuntuArch=ppc64el
__UbuntuRepo="http://ports.ubuntu.com/ubuntu-ports/"
__UbuntuPackages="${__UbuntuPackages// libunwind8-dev/}"
__UbuntuPackages="${__UbuntuPackages// libomp-dev/}"
__UbuntuPackages="${__UbuntuPackages// libomp5/}"
unset __LLDB_Package
;;
s390x)
__BuildArch=s390x
__AlpineArch=s390x
__QEMUArch=s390x
__UbuntuArch=s390x
__UbuntuRepo="http://ports.ubuntu.com/ubuntu-ports/"
__UbuntuPackages="${__UbuntuPackages// libunwind8-dev/}"
__UbuntuPackages="${__UbuntuPackages// libomp-dev/}"
__UbuntuPackages="${__UbuntuPackages// libomp5/}"
unset __LLDB_Package
;;
x64)
__BuildArch=x64
__AlpineArch=x86_64
__QEMUArch=x86_64
__UbuntuArch=amd64
__FreeBSDArch=amd64
__FreeBSDMachineArch=amd64
__illumosArch=x86_64
__UbuntuRepo=
;;
x86)
__BuildArch=x86
__AlpineArch=i386
__QEMUArch=i386
__UbuntuArch=i386
__AlpineArch=x86
__UbuntuRepo="http://archive.ubuntu.com/ubuntu/"
;;
lldb*)
version="${lowerI/lldb/}"
parts=(${version//./ })
# for versions > 6.0, lldb has dropped the minor version
if [[ "${parts[0]}" -gt 6 ]]; then
version="${parts[0]}"
fi
__LLDB_Package="liblldb-${version}-dev"
;;
no-lldb)
unset __LLDB_Package
;;
llvm*)
version="${lowerI/llvm/}"
parts=(${version//./ })
__LLVM_MajorVersion="${parts[0]}"
__LLVM_MinorVersion="${parts[1]}"
# for versions > 6.0, llvm has dropped the minor version
if [[ -z "$__LLVM_MinorVersion" && "$__LLVM_MajorVersion" -le 6 ]]; then
__LLVM_MinorVersion=0;
fi
;;
xenial) # Ubuntu 16.04
if [[ "$__CodeName" != "jessie" ]]; then
__CodeName=xenial
fi
;;
zesty) # Ubuntu 17.04
if [[ "$__CodeName" != "jessie" ]]; then
__CodeName=zesty
fi
;;
bionic) # Ubuntu 18.04
if [[ "$__CodeName" != "jessie" ]]; then
__CodeName=bionic
fi
;;
focal) # Ubuntu 20.04
if [[ "$__CodeName" != "jessie" ]]; then
__CodeName=focal
fi
;;
jammy) # Ubuntu 22.04
if [[ "$__CodeName" != "jessie" ]]; then
__CodeName=jammy
fi
;;
jessie) # Debian 8
__CodeName=jessie
if [[ -z "$__UbuntuRepo" ]]; then
__UbuntuRepo="http://ftp.debian.org/debian/"
fi
;;
stretch) # Debian 9
__CodeName=stretch
__LLDB_Package="liblldb-6.0-dev"
if [[ -z "$__UbuntuRepo" ]]; then
__UbuntuRepo="http://ftp.debian.org/debian/"
fi
;;
buster) # Debian 10
__CodeName=buster
__LLDB_Package="liblldb-6.0-dev"
if [[ -z "$__UbuntuRepo" ]]; then
__UbuntuRepo="http://ftp.debian.org/debian/"
fi
;;
bullseye) # Debian 11
__CodeName=bullseye
if [[ -z "$__UbuntuRepo" ]]; then
__UbuntuRepo="http://ftp.debian.org/debian/"
fi
;;
sid) # Debian sid
__CodeName=sid
if [[ -z "$__UbuntuRepo" ]]; then
__UbuntuRepo="http://ftp.debian.org/debian/"
fi
;;
tizen)
__CodeName=
__UbuntuRepo=
__Tizen=tizen
;;
alpine*)
__CodeName=alpine
__UbuntuRepo=
version="${lowerI/alpine/}"
if [[ "$version" == "edge" ]]; then
__AlpineVersion=edge
else
parts=(${version//./ })
__AlpineMajorVersion="${parts[0]}"
__AlpineMinoVersion="${parts[1]}"
__AlpineVersion="$__AlpineMajorVersion.$__AlpineMinoVersion"
fi
;;
freebsd12)
__CodeName=freebsd
__SkipUnmount=1
;;
freebsd13)
__CodeName=freebsd
__FreeBSDBase="13.0-RELEASE"
__FreeBSDABI="13"
__SkipUnmount=1
;;
illumos)
__CodeName=illumos
__SkipUnmount=1
;;
haiku)
__CodeName=haiku
__BuildArch=x64
__SkipUnmount=1
;;
--skipunmount)
__SkipUnmount=1
;;
--rootfsdir|-rootfsdir)
shift
__RootfsDir="$1"
;;
--use-mirror)
__UseMirror=1
;;
--use-jobs)
shift
MAXJOBS=$1
;;
*)
__UnprocessedBuildArgs="$__UnprocessedBuildArgs $1"
;;
esac
shift
done
if [[ "$__BuildArch" == "armel" ]]; then
__LLDB_Package="lldb-3.5-dev"
fi
__UbuntuPackages+=" ${__LLDB_Package:-}"
if [[ -n "$__LLVM_MajorVersion" ]]; then
__UbuntuPackages+=" libclang-common-${__LLVM_MajorVersion}${__LLVM_MinorVersion:+.$__LLVM_MinorVersion}-dev"
fi
if [[ -z "$__RootfsDir" && -n "$ROOTFS_DIR" ]]; then
__RootfsDir="$ROOTFS_DIR"
fi
if [[ -z "$__RootfsDir" ]]; then
__RootfsDir="$__CrossDir/../../../.tools/rootfs/$__BuildArch"
fi
if [[ -d "$__RootfsDir" ]]; then
if [[ "$__SkipUnmount" == "0" ]]; then
umount "$__RootfsDir"/* || true
fi
rm -rf "$__RootfsDir"
fi
mkdir -p "$__RootfsDir"
__RootfsDir="$( cd "$__RootfsDir" && pwd )"
if [[ "$__CodeName" == "alpine" ]]; then
__ApkToolsVersion=2.12.11
__ApkToolsDir="$(mktemp -d)"
wget "https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic//v$__ApkToolsVersion/x86_64/apk.static" -P "$__ApkToolsDir"
chmod +x "$__ApkToolsDir/apk.static"
mkdir -p "$__RootfsDir"/usr/bin
cp -v "/usr/bin/qemu-$__QEMUArch" "$__RootfsDir/usr/bin"
if [[ "$__AlpineVersion" == "edge" ]]; then
version=edge
else
version="v$__AlpineVersion"
fi
# initialize DB
"$__ApkToolsDir/apk.static" \
-X "http://dl-cdn.alpinelinux.org/alpine/$version/main" \
-X "http://dl-cdn.alpinelinux.org/alpine/$version/community" \
-U --allow-untrusted --root "$__RootfsDir" --arch "$__AlpineArch" --initdb add
if [[ "$__AlpineLlvmLibsLookup" == 1 ]]; then
__AlpinePackages+=" $("$__ApkToolsDir/apk.static" \
-X "http://dl-cdn.alpinelinux.org/alpine/$version/main" \
-X "http://dl-cdn.alpinelinux.org/alpine/$version/community" \
-U --allow-untrusted --root "$__RootfsDir" --arch "$__AlpineArch" \
search 'llvm*-libs' | sort | tail -1 | sed 's/-[^-]*//2g')"
fi
# install all packages in one go
"$__ApkToolsDir/apk.static" \
-X "http://dl-cdn.alpinelinux.org/alpine/$version/main" \
-X "http://dl-cdn.alpinelinux.org/alpine/$version/community" \
-U --allow-untrusted --no-scripts --root "$__RootfsDir" --arch "$__AlpineArch" \
add $__AlpinePackages
rm -r "$__ApkToolsDir"
elif [[ "$__CodeName" == "freebsd" ]]; then
mkdir -p "$__RootfsDir"/usr/local/etc
JOBS=${MAXJOBS:="$(getconf _NPROCESSORS_ONLN)"}
wget -O - "https://download.freebsd.org/ftp/releases/${__FreeBSDArch}/${__FreeBSDMachineArch}/${__FreeBSDBase}/base.txz" | tar -C "$__RootfsDir" -Jxf - ./lib ./usr/lib ./usr/libdata ./usr/include ./usr/share/keys ./etc ./bin/freebsd-version
echo "ABI = \"FreeBSD:${__FreeBSDABI}:${__FreeBSDMachineArch}\"; FINGERPRINTS = \"${__RootfsDir}/usr/share/keys\"; REPOS_DIR = [\"${__RootfsDir}/etc/pkg\"]; REPO_AUTOUPDATE = NO; RUN_SCRIPTS = NO;" > "${__RootfsDir}"/usr/local/etc/pkg.conf
echo "FreeBSD: { url: \"pkg+http://pkg.FreeBSD.org/\${ABI}/quarterly\", mirror_type: \"srv\", signature_type: \"fingerprints\", fingerprints: \"${__RootfsDir}/usr/share/keys/pkg\", enabled: yes }" > "${__RootfsDir}"/etc/pkg/FreeBSD.conf
mkdir -p "$__RootfsDir"/tmp
# get and build package manager
wget -O - "https://github.com/freebsd/pkg/archive/${__FreeBSDPkg}.tar.gz" | tar -C "$__RootfsDir"/tmp -zxf -
cd "$__RootfsDir/tmp/pkg-${__FreeBSDPkg}"
# needed for install to succeed
mkdir -p "$__RootfsDir"/host/etc
./autogen.sh && ./configure --prefix="$__RootfsDir"/host && make -j "$JOBS" && make install
rm -rf "$__RootfsDir/tmp/pkg-${__FreeBSDPkg}"
# install packages we need.
INSTALL_AS_USER=$(whoami) "$__RootfsDir"/host/sbin/pkg -r "$__RootfsDir" -C "$__RootfsDir"/usr/local/etc/pkg.conf update
INSTALL_AS_USER=$(whoami) "$__RootfsDir"/host/sbin/pkg -r "$__RootfsDir" -C "$__RootfsDir"/usr/local/etc/pkg.conf install --yes $__FreeBSDPackages
elif [[ "$__CodeName" == "illumos" ]]; then
mkdir "$__RootfsDir/tmp"
pushd "$__RootfsDir/tmp"
JOBS=${MAXJOBS:="$(getconf _NPROCESSORS_ONLN)"}
echo "Downloading sysroot."
wget -O - https://github.com/illumos/sysroot/releases/download/20181213-de6af22ae73b-v1/illumos-sysroot-i386-20181213-de6af22ae73b-v1.tar.gz | tar -C "$__RootfsDir" -xzf -
echo "Building binutils. Please wait.."
wget -O - https://ftp.gnu.org/gnu/binutils/binutils-2.33.1.tar.bz2 | tar -xjf -
mkdir build-binutils && cd build-binutils
../binutils-2.33.1/configure --prefix="$__RootfsDir" --target="${__illumosArch}-sun-solaris2.10" --program-prefix="${__illumosArch}-illumos-" --with-sysroot="$__RootfsDir"
make -j "$JOBS" && make install && cd ..
echo "Building gcc. Please wait.."
wget -O - https://ftp.gnu.org/gnu/gcc/gcc-8.4.0/gcc-8.4.0.tar.xz | tar -xJf -
CFLAGS="-fPIC"
CXXFLAGS="-fPIC"
CXXFLAGS_FOR_TARGET="-fPIC"
CFLAGS_FOR_TARGET="-fPIC"
export CFLAGS CXXFLAGS CXXFLAGS_FOR_TARGET CFLAGS_FOR_TARGET
mkdir build-gcc && cd build-gcc
../gcc-8.4.0/configure --prefix="$__RootfsDir" --target="${__illumosArch}-sun-solaris2.10" --program-prefix="${__illumosArch}-illumos-" --with-sysroot="$__RootfsDir" --with-gnu-as \
--with-gnu-ld --disable-nls --disable-libgomp --disable-libquadmath --disable-libssp --disable-libvtv --disable-libcilkrts --disable-libada --disable-libsanitizer \
--disable-libquadmath-support --disable-shared --enable-tls
make -j "$JOBS" && make install && cd ..
BaseUrl=https://pkgsrc.smartos.org
if [[ "$__UseMirror" == 1 ]]; then
BaseUrl=https://pkgsrc.smartos.skylime.net
fi
BaseUrl="$BaseUrl/packages/SmartOS/trunk/${__illumosArch}/All"
echo "Downloading manifest"
wget "$BaseUrl"
echo "Downloading dependencies."
read -ra array <<<"$__IllumosPackages"
for package in "${array[@]}"; do
echo "Installing '$package'"
# find last occurrence of package in listing and extract its name
package="$(sed -En '/.*href="('"$package"'-[0-9].*).tgz".*/h;$!d;g;s//\1/p' All)"
echo "Resolved name '$package'"
wget "$BaseUrl"/"$package".tgz
ar -x "$package".tgz
tar --skip-old-files -xzf "$package".tmp.tg* -C "$__RootfsDir" 2>/dev/null
done
echo "Cleaning up temporary files."
popd
rm -rf "$__RootfsDir"/{tmp,+*}
mkdir -p "$__RootfsDir"/usr/include/net
mkdir -p "$__RootfsDir"/usr/include/netpacket
wget -P "$__RootfsDir"/usr/include/net https://raw.githubusercontent.com/illumos/illumos-gate/master/usr/src/uts/common/io/bpf/net/bpf.h
wget -P "$__RootfsDir"/usr/include/net https://raw.githubusercontent.com/illumos/illumos-gate/master/usr/src/uts/common/io/bpf/net/dlt.h
wget -P "$__RootfsDir"/usr/include/netpacket https://raw.githubusercontent.com/illumos/illumos-gate/master/usr/src/uts/common/inet/sockmods/netpacket/packet.h
wget -P "$__RootfsDir"/usr/include/sys https://raw.githubusercontent.com/illumos/illumos-gate/master/usr/src/uts/common/sys/sdt.h
elif [[ "$__CodeName" == "haiku" ]]; then
JOBS=${MAXJOBS:="$(getconf _NPROCESSORS_ONLN)"}
echo "Building Haiku sysroot for x86_64"
mkdir -p "$__RootfsDir/tmp"
cd "$__RootfsDir/tmp"
git clone -b hrev56235 https://review.haiku-os.org/haiku
git clone -b btrev43195 https://review.haiku-os.org/buildtools
cd "$__RootfsDir/tmp/buildtools" && git checkout 7487388f5110021d400b9f3b88e1a7f310dc066d
# Fetch some unmerged patches
cd "$__RootfsDir/tmp/haiku"
## Add development build profile (slimmer than nightly)
git fetch origin refs/changes/64/4164/1 && git -c commit.gpgsign=false cherry-pick FETCH_HEAD
# Build jam
cd "$__RootfsDir/tmp/buildtools/jam"
make
# Configure cross tools
echo "Building cross-compiler"
mkdir -p "$__RootfsDir/generated"
cd "$__RootfsDir/generated"
"$__RootfsDir/tmp/haiku/configure" -j"$JOBS" --sysroot "$__RootfsDir" --cross-tools-source "$__RootfsDir/tmp/buildtools" --build-cross-tools x86_64
# Build Haiku packages
echo "Building Haiku"
echo 'HAIKU_BUILD_PROFILE = "development-raw" ;' > UserProfileConfig
"$__RootfsDir/tmp/buildtools/jam/jam0" -j"$JOBS" -q '<build>package' '<repository>Haiku'
BaseUrl="https://depot.haiku-os.org/__api/v2/pkg/get-pkg"
# Download additional packages
echo "Downloading additional required packages"
read -ra array <<<"$__HaikuPackages"
for package in "${array[@]}"; do
echo "Downloading $package..."
# API documented here: https://github.com/haiku/haikudepotserver/blob/master/haikudepotserver-api2/src/main/resources/api2/pkg.yaml#L60
# The schema here: https://github.com/haiku/haikudepotserver/blob/master/haikudepotserver-api2/src/main/resources/api2/pkg.yaml#L598
hpkgDownloadUrl="$(wget -qO- --post-data='{"name":"'"$package"'","repositorySourceCode":"haikuports_x86_64","versionType":"LATEST","naturalLanguageCode":"en"}' \
--header='Content-Type:application/json' "$BaseUrl" | jq -r '.result.versions[].hpkgDownloadURL')"
wget -P "$__RootfsDir/generated/download" "$hpkgDownloadUrl"
done
# Setup the sysroot
echo "Setting up sysroot and extracting needed packages"
mkdir -p "$__RootfsDir/boot/system"
for file in "$__RootfsDir/generated/objects/haiku/x86_64/packaging/packages/"*.hpkg; do
"$__RootfsDir/generated/objects/linux/x86_64/release/tools/package/package" extract -C "$__RootfsDir/boot/system" "$file"
done
for file in "$__RootfsDir/generated/download/"*.hpkg; do
"$__RootfsDir/generated/objects/linux/x86_64/release/tools/package/package" extract -C "$__RootfsDir/boot/system" "$file"
done
# Cleaning up temporary files
echo "Cleaning up temporary files"
rm -rf "$__RootfsDir/tmp"
for name in "$__RootfsDir/generated/"*; do
if [[ "$name" =~ "cross-tools-" ]]; then
: # Keep the cross-compiler
else
rm -rf "$name"
fi
done
elif [[ -n "$__CodeName" ]]; then
qemu-debootstrap $__Keyring --arch "$__UbuntuArch" "$__CodeName" "$__RootfsDir" "$__UbuntuRepo"
cp "$__CrossDir/$__BuildArch/sources.list.$__CodeName" "$__RootfsDir/etc/apt/sources.list"
chroot "$__RootfsDir" apt-get update
chroot "$__RootfsDir" apt-get -f -y install
chroot "$__RootfsDir" apt-get -y install $__UbuntuPackages
chroot "$__RootfsDir" symlinks -cr /usr
chroot "$__RootfsDir" apt-get clean
if [[ "$__SkipUnmount" == "0" ]]; then
umount "$__RootfsDir"/* || true
fi
if [[ "$__BuildArch" == "armel" && "$__CodeName" == "jessie" ]]; then
pushd "$__RootfsDir"
patch -p1 < "$__CrossDir/$__BuildArch/armel.jessie.patch"
popd
fi
elif [[ "$__Tizen" == "tizen" ]]; then
ROOTFS_DIR="$__RootfsDir" "$__CrossDir/tizen-build-rootfs.sh" "$__BuildArch"
else
echo "Unsupported target platform."
usage;
exit 1
fi

View file

@ -1,20 +0,0 @@
#!/bin/sh
if [ $# -lt 1 ]; then
echo "Usage: $0 <basebranch>"
exit 1
fi
if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
echo "Fatal: not inside a git repository"
exit 2
fi
basebranch=$1
if ! git rev-parse --verify --quiet $basebranch >/dev/null; then
# The base branch does not eixst, probably due to a shallow clone
git fetch -v $CI_MERGE_REQUEST_PROJECT_URL.git +refs/heads/$basebranch:refs/heads/$basebranch
fi
git --no-pager diff --diff-filter=ACMR --name-only $basebranch...HEAD -- "*/APKBUILD" | xargs -r -n1 dirname

View file

@ -1,74 +0,0 @@
# shellcheck disable=SC3043
:
# shellcheck disable=SC3040
set -eu -o pipefail
changed_repos() {
: "${APORTSDIR?APORTSDIR missing}"
: "${BASEBRANCH?BASEBRANCH missing}"
cd "$APORTSDIR"
for repo in $REPOS; do
git diff --diff-filter=ACMR --exit-code "$BASEBRANCH"...HEAD -- "$repo" >/dev/null \
|| echo "$repo"
done
}
changed_aports() {
: "${APORTSDIR?APORTSDIR missing}"
: "${BASEBRANCH?BASEBRANCH missing}"
cd "$APORTSDIR"
local repo="$1"
local aports
aports=$(git diff --name-only --diff-filter=ACMR --relative="$repo" \
"$BASEBRANCH"...HEAD -- "*/APKBUILD" | xargs -rn1 dirname)
# shellcheck disable=2086
ap builddirs -d "$APORTSDIR/$repo" $aports 2>/dev/null | xargs -rn1 basename
}
section_start() {
name=${1?arg 1 name missing}
header=${2?arg 2 header missing}
collapsed=$2
timestamp=$(date +%s)
options=""
case $collapsed in
yes|on|collapsed|true) options="[collapsed=true]";;
esac
printf "\e[0Ksection_start:%d:%s%s\r\e[0K%s\n" "$timestamp" "$name" "$options" "$header"
}
section_end() {
name=$1
timestamp=$(date +%s)
printf "\e[0Ksection_end:%d:%s\r\e[0K" "$timestamp" "$name"
}
gitlab_key_to_rsa() {
KEY=$1
TYPE=$2
TGT=$3
TGT_DIR=${TGT%/*}
if [ "$TGT" == "$TGT_DIR" ]; then
TGT_DIR="./"
fi
if [ ! -d "$TGT_DIR" ]; then
mkdir -p "$TGT_DIR"
fi
case $TYPE in
rsa-public) local type="PUBLIC";;
rsa-private) local type="RSA PRIVATE";;
esac
echo "-----BEGIN $type KEY-----" > "$TGT"
echo $1 | sed 's/.\{64\}/&\
/g' >> "$TGT"
echo "-----END $type KEY-----" >> "$TGT"
}

View file

@ -1,96 +0,0 @@
#!/bin/sh
BLUE="\e[34m"
MAGENTA="\e[35m"
RESET="\e[0m"
readonly BASEBRANCH=$CI_MERGE_REQUEST_TARGET_BRANCH_NAME
verbose() {
echo "> " "$@"
# shellcheck disable=SC2068
$@
}
debugging() {
[ -n "$CI_DEBUG_BUILD" ]
}
debug() {
if debugging; then
verbose "$@"
fi
}
# git no longer allows to execute in repositories owned by different users
sudo chown -R gitlab-runner: .
fetch_flags="-qn"
debugging && fetch_flags="-v"
git fetch $fetch_flags "$CI_MERGE_REQUEST_PROJECT_URL" \
"+refs/heads/$BASEBRANCH:refs/heads/$BASEBRANCH"
if debugging; then
merge_base=$(git merge-base "$BASEBRANCH" HEAD)
echo "$merge_base"
git --version
git config -l
git tag merge-base "$merge_base" || { echo "Could not determine merge-base"; exit 50; }
git log --oneline --graph --decorate --all
fi
has_problems=0
for PKG in $(changed-aports "$BASEBRANCH"); do
printf "$BLUE==>$RESET Linting $PKG\n"
(
cd "$PKG"
repo=$(basename $(dirname $PKG));
if [ "$repo" == "backports" ]; then
echo "Skipping $PKG as backports (we don't care)"
continue
fi
printf "\n\n"
printf "$BLUE"
printf '======================================================\n'
printf " parse APKBUILD:\n"
printf '======================================================'
printf "$RESET\n\n"
( . ./APKBUILD ) || has_problems=1
printf "\n\n"
printf "$BLUE"
printf '======================================================\n'
printf " abuild sanitycheck:\n"
printf '======================================================'
printf "$RESET\n\n"
abuild sanitycheck || has_problems=1
printf "\n\n"
printf "$BLUE"
printf '======================================================\n'
printf " apkbuild-shellcheck:\n"
printf '======================================================'
printf "$RESET\n"
apkbuild-shellcheck || has_problems=1
printf "\n\n"
printf "$BLUE"
printf '======================================================\n'
printf " apkbuild-lint:\n"
printf '======================================================'
printf "$RESET\n\n"
apkbuild-lint APKBUILD || has_problems=1
return $has_problems
) || has_problems=1
echo
done
exit $has_problems

View file

@ -1,56 +0,0 @@
#!/bin/sh
# shellcheck disable=SC3043
. $CI_PROJECT_DIR/.gitlab/bin/functions.sh
# shellcheck disable=SC3040
set -eu -o pipefail
readonly APORTSDIR=$CI_PROJECT_DIR
readonly REPOS="backports user"
readonly BASEBRANCH=$CI_MERGE_REQUEST_TARGET_BRANCH_NAME
export GIT_SSH_COMMAND="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
gitlab_key_to_rsa $ABUILD_KEY rsa-private $HOME/.abuild/$ABUILD_KEY_NAME.rsa
gitlab_key_to_rsa $ABUILD_KEY_PUB rsa-public $HOME/.abuild/$ABUILD_KEY_NAME.rsa.pub
gitlab_key_to_rsa $SSH_KEY rsa-private $HOME/.ssh/id_rsa
chmod 700 "$HOME"/.ssh/id_rsa
chmod 700 "$HOME"/.abuild/$ABUILD_KEY_NAME.rsa
echo "PACKAGER_PRIVKEY=$HOME/.abuild/$ABUILD_KEY_NAME.rsa" > $HOME/.abuild/abuild.conf
echo "REPODEST=$HOME/repo-apk" >> $HOME/.abuild/abuild.conf
sudo cp $HOME/.abuild/$ABUILD_KEY_NAME.rsa.pub /etc/apk/keys/.
if [ -d $HOME/repo-apk ]; then
git -C $HOME/repo-apk fetch
git -C $HOME/repo-apk checkout $BASEBRANCH
git -C $HOME/repo-apk pull --rebase
else
git clone git@lab.ilot.io:ayakael/repo-apk -b $BASEBRANCH $HOME/repo-apk
fi
for i in $(find packages -type f -name "*.apk"); do
install -vDm644 $i ${i/packages/$HOME\/repo-apk}
done
fetch_flags="-qn"
git fetch $fetch_flags "$CI_MERGE_REQUEST_PROJECT_URL" \
"+refs/heads/$BASEBRANCH:refs/heads/$BASEBRANCH"
for repo in $(changed_repos); do
rm $HOME/repo-apk/$repo/*/APKINDEX.tar.gz | true
mkdir -p $repo/DUMMY
echo "pkgname=DUMMY" > $repo/DUMMY/APKBUILD
cd $repo/DUMMY
for i in $(find $HOME/repo-apk/$repo -maxdepth 1 -mindepth 1 -printf '%P '); do
CHOST=$i abuild index
done
cd "$CI_PROJECT_DIR"
rm -R $repo/DUMMY
done
git -C $HOME/repo-apk add .
git -C $HOME/repo-apk commit -m "Update from $CI_MERGE_REQUEST_IID - $CI_MERGE_REQUEST_TITLE"
git -C $HOME/repo-apk push

View file

@ -1,17 +0,0 @@
diff --git a/usr/bin/abuild.orig b/usr/bin/abuild
index 71e0681..d4ae3dd 100755
--- a/usr/bin/abuild.orig
+++ b/usr/bin/abuild
@@ -2231,7 +2231,11 @@ calcdeps() {
list_has $i $builddeps && continue
subpackages_has ${i%%[<>=]*} || builddeps="$builddeps $i"
done
- hostdeps="$EXTRADEPENDS_TARGET"
+ for i in $EXTRADEPENDS_HOST $EXTRADEPENDS_TARGET $depends $makedepends; do
+ [ "$pkgname" = "${i%%[<>=]*}" ] && continue
+ list_has $i $hostdeps && continue
+ subpackages_has ${i%%[<>=]*} || hostdeps="$hostdeps $i"
+ done
fi
}

View file

@ -1,32 +1,31 @@
# user-aports # ayaports
Upstream: https://lab.ilot.io/ayakael/user-aports Upstream: https://ayakael.net/forge/ayaports
## Description ## Description
This repository contains aports that are not yet merged in the official Alpine This repository contains aports that are not yet merged in the official Alpine
Linux repository or dont adhere to Alpine polices. Packages are automatically Linux repository or dont adhere to Alpine polices. Packages are automatically
built using GitLab CI on my own GitLab instance. Once built, they are deployed built using CI. Once built, they are deployed to a git-lfs repository, making
to a git-lfs repository, making them available to apk. them available to apk.
Branches are matched to Alpine releases. Branches are matched to Alpine releases.
## Repositories ## Repositories
You can browse all the repositories at https://lab.ilot.io/ayakael/repo-apk. You can browse all the repositories at https://codeberg.org/ayakael/ayaports
Affixed to each repository description is the appropriate link for use in Affixed to each repository description is the appropriate link for use in
`/etc/apk/repositories`. `/etc/apk/repositories`.
#### Backports #### Backports
``` ```
https://lab.ilot.io/ayakael/repo-apk/-/raw/edge/backports https://ayakael.net/api/packages/forge/alpine/v3.20/backports
``` ```
Aports from the official Alpine repositories backported from edge. Aports from the official Alpine repositories backported from edge.
#### User #### User
``` ```
https://lab.ilot.io/ayakael/repo-apk/-/raw/edge/user https://ayakael.net/api/packages/forge/alpine/v3.20/backports
``` ```
Aports that have yet to be (or may never be) upstreamed to the official Aports that have yet to be (or may never be) upstreamed to the official
@ -34,11 +33,11 @@ aports.
## How to use ## How to use
Add security key of the repo-apk repository to your /etc/apk/keys: Add security key of the apk repository to your /etc/apk/keys:
```shell ```shell
cd /etc/apk/keys cd /etc/apk/keys
wget https://lab.ilot.io/ayakael/repo-apk/-/raw/edge/antoine.martin@protonmail.com-5b3109ad.rsa.pub wget https://ayakael.net/pkgs/apk/raw/branch/v3.20/antoine.martin@protonmail.com-5b3109ad.rsa.pub
``` ```
Add repositories that you want to use (see above) to `/etc/apk/repositories`. Add repositories that you want to use (see above) to `/etc/apk/repositories`.
@ -52,10 +51,10 @@ they will work for you.
## Contribution & bug reports ## Contribution & bug reports
If you wish to contribute to this aports collection, or wish to report a bug, If you wish to contribute to this aports collection, or wish to report a bug,
you can do so on Alpine's GitLab instance here: you can do so on Codeberg here:
https://gitlab.alpinelinux.org/ayakael/user-aports https://codeberg.org/ayakael/ayaports/issues
For packages that are in testing/community, bug reports and merge requests For packages that are in backports, bug reports and merge requests
should be done on Alpine's aports repo instance: should be done on Alpine's aports repo instance:
https://gitlab.alpinelinux.org/alpine/aports https://gitlab.alpinelinux.org/alpine/aports

View file

@ -0,0 +1,25 @@
diff --color -Nur calibre-6.17.0.orig/src/calibre/gui2/update.py calibre-6.17.0/src/calibre/gui2/update.py
--- calibre-6.17.0.orig/src/calibre/gui2/update.py 2023-05-06 11:36:35.678461036 -0700
+++ calibre-6.17.0/src/calibre/gui2/update.py 2023-05-06 11:39:10.365134930 -0700
@@ -82,20 +82,6 @@
while not self.shutdown_event.is_set():
calibre_update_version = NO_CALIBRE_UPDATE
plugins_update_found = 0
- try:
- version = get_newest_version()
- if version[:2] > numeric_version[:2]:
- calibre_update_version = version
- except Exception as e:
- prints('Failed to check for calibre update:', as_unicode(e))
- try:
- update_plugins = get_plugin_updates_available(raise_error=True)
- if update_plugins is not None:
- plugins_update_found = len(update_plugins)
- except Exception as e:
- prints('Failed to check for plugin update:', as_unicode(e))
- if calibre_update_version != NO_CALIBRE_UPDATE or plugins_update_found > 0:
- self.signal.update_found.emit(calibre_update_version, plugins_update_found)
self.shutdown_event.wait(self.INTERVAL)
def shutdown(self):

116
backports/calibre/APKBUILD Normal file
View file

@ -0,0 +1,116 @@
# Maintainer: Cowington Post <cowingtonpost@gmail.com>
pkgname=calibre
pkgver=7.12.0
pkgrel=0
pkgdesc="Ebook management application"
# qt6-webengine
arch="x86_64 aarch64"
url="https://calibre-ebook.com"
license="GPL-3.0-or-later"
depends="
font-liberation
libwmf
mtdev
optipng
poppler
py3-apsw
py3-beautifulsoup4
py3-css-parser
py3-cssselect
py3-dateutil
py3-dnspython
py3-feedparser
py3-fonttools
py3-html2text
py3-html5-parser
py3-html5lib
py3-jeepney
py3-lxml
py3-markdown
py3-mechanize
py3-msgpack
py3-netifaces
py3-pillow
py3-psutil
py3-pycryptodome
py3-pygments
py3-pyqt6-webengine
py3-regex
py3-xxhash
py3-zeroconf
qt6-qtimageformats
qt6-qtsvg
qt6-qtwebengine
udisks2
"
makedepends="
cmake
curl
hunspell-dev
hyphen-dev
libmtp-dev
libstemmer-dev
libusb-dev
podofo-dev
py3-pyqt-builder
py3-pyqt6-sip
py3-sip
python3-dev
qt6-qtbase-dev
uchardet-dev
xdg-utils
"
subpackages="
$pkgname-pyc
$pkgname-doc
$pkgname-bash-completion
$pkgname-zsh-completion
"
source="https://download.calibre-ebook.com/$pkgver/calibre-$pkgver.tar.xz
0001-$pkgname-no-update.patch
"
# net: downloads iso-codes
# !check: no tests ran
options="net !check"
export LANG="en_US.UTF-8"
prepare() {
default_prepare
rm -f resources/calibre-portable.*
}
build() {
python3 setup.py build
python3 setup.py iso639
python3 setup.py iso3166
python3 setup.py liberation_fonts --system-liberation_fonts --path-to-liberation_fonts /usr/share/fonts/liberation
python3 setup.py mathjax
python3 setup.py gui
}
check() {
python3 -m unittest discover
}
package() {
# needed for zsh
mkdir -p "$pkgdir"/usr/share/zsh/site-functions
python3 setup.py install \
--staging-root="$pkgdir"/usr \
--no-compile \
--system-plugins-location=/usr/share/calibre/system-plugins
cp -a man-pages/ "$pkgdir"/usr/share/man
rm -r "$pkgdir"/usr/share/calibre/rapydscript/
python3 -m compileall -fq "$pkgdir"/usr
}
sha512sums="
ee654260d7047f0579a659b8907439a407fb561affcef84141126840452e7b98d10bb5e0a69e0cc809d9ba68729570900a0e7251f18b2056a94b0213880f1363 calibre-7.12.0.tar.xz
eb8e7ce40ff8b8daf6e7e55a5dff8ec4dff06c45744266bb48b3194e92ab1196bc91468203e3c2ca1e5144166a7d6be90e6cf0253513e761b56a4c85be4c2c76 0001-calibre-no-update.patch
"

View file

@ -0,0 +1,47 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=forgejo-runner
pkgver=3.5.0
pkgrel=2
pkgdesc="CI/CD job runner for Forgejo"
url="https://code.forgejo.org/forgejo/runner"
arch="all"
license="MIT"
makedepends="go"
install="$pkgname.pre-install $pkgname.pre-upgrade"
subpackages="$pkgname-openrc"
source="$pkgname-$pkgver.tar.gz::https://code.forgejo.org/forgejo/runner/archive/v$pkgver.tar.gz
forgejo-runner.logrotate
forgejo-runner.initd
forgejo-runner.confd
"
builddir="$srcdir/runner"
options="!check" # tests require running forgejo
build() {
go build \
-o forgejo-runner \
-ldflags "-X gitea.com/gitea/act_runner/internal/pkg/ver.version=$pkgver"
./forgejo-runner generate-config > config.example.yaml
}
check() {
go test ./...
}
package() {
install -Dm755 forgejo-runner -t "$pkgdir"/usr/bin/
install -Dm644 config.example.yaml -t "$pkgdir"/etc/forgejo-runner/
install -Dm755 "$srcdir"/forgejo-runner.initd "$pkgdir"/etc/init.d/forgejo-runner
install -Dm644 "$srcdir"/forgejo-runner.confd "$pkgdir"/etc/conf.d/forgejo-runner
install -Dm644 "$srcdir"/forgejo-runner.logrotate "$pkgdir"/etc/logrotate.d/forgejo-runner
}
sha512sums="
e78968a5f9b6e797fb759a5c8cbf46a5c2fef2083dabc88599c9017729faface963576c63a948b0add424cb267902e864fb1a1b619202660296976d93e670713 forgejo-runner-3.5.0.tar.gz
a3c7238b0c63053325d31e09277edd88690ef5260854517f82d9042d6173fb5d24ebfe36e1d7363673dd8801972638a6e69b6af8ad43debb6057515c73655236 forgejo-runner.logrotate
bb0c6fbe90109c77f9ef9cb0d35d20b8033be0e4b7a60839b596aa5528dfa24309ec894d8c04066bf8fb30143e63a5fd8cc6fc89aac364422b583e0f840e2da6 forgejo-runner.initd
e11eab27f88f1181112389befa7de3aa0bac7c26841861918707ede53335535425c805e6682e25704e9c8a6aecba3dc13e20900a99df1183762b012b62f26d5f forgejo-runner.confd
"

View file

@ -0,0 +1,17 @@
# Configuration for /etc/init.d/forgejo-runner
# Path to the config file (--config).
#cfgfile="/etc/forgejo-runner/config.yaml"
# Path to the working directory (--working-directory).
#datadir="/var/lib/forgejo-runner"
# Path to the log file where stdout/stderr will be redirected.
# Leave empty/commented out to use syslog instead.
#output_log="/var/log/forgejo-runner.log"
# You may change this to root, e.g. to run jobs in LXC
#command_user="forgejo-runner"
# Comment out to run without process supervisor.
supervisor=supervise-daemon

View file

@ -0,0 +1,38 @@
#!/sbin/openrc-run
description="Forgejo CI Runner"
name="Forgejo Runner"
: ${cfgfile:="/etc/forgejo-runner/config.yaml"}
: ${datadir:="/var/lib/forgejo-runner"}
: ${command_user:="forgejo-runner"}
command="/usr/bin/forgejo-runner"
command_args="daemon --config $cfgfile"
command_background="yes"
directory="$datadir"
pidfile="/run/$RC_SVCNAME.pid"
depend() {
need net
use dns logger
}
start_pre() {
checkpath -d -o "$command_user" /etc/forgejo-runner
checkpath -d -o "$command_user" "$datadir"
if ! [ -e "$cfgfile" ]; then
eerror "Config file $cfgfile doesn't exist."
eerror "You can generate it with: forgejo-runner generate-config,"
eerror "or use the auto-generated one in /etc/forgejo-runner/config.example.yaml"
return 1
fi
if [ "$error_log" ]; then
output_log="$error_log"
else
output_logger="logger -t '${RC_SVCNAME}' -p daemon.info"
error_logger="logger -t '${RC_SVCNAME}' -p daemon.error"
fi
}

View file

@ -0,0 +1,5 @@
/var/log/forgejo-runner.log {
copytruncate
missingok
notifempty
}

View file

@ -0,0 +1,14 @@
#!/bin/sh
addgroup -S forgejo-runner 2>/dev/null
adduser -S -D -H -h /var/lib/forgejo-runner -s /sbin/nologin -G forgejo-runner -g forgejo-runner forgejo-runner 2>/dev/null
cat >&2 <<EOF
* In order to setup the runner, create a config file
* in /etc/forgejo-runner/config.yaml (either from .example.yaml,
* or generating your own with 'forgejo-runner generate-config'),
* then register it with 'doas -u forgejo-runner forgejo-runner register'
* ran in the /var/lib/forgejo-runner directory.
EOF
exit 0

View file

@ -0,0 +1 @@
forgejo-runner.pre-install

View file

@ -1,8 +1,8 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net> # Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=freetube pkgname=freetube
pkgver=0.20.0 pkgver=0.21.3
pkgrel=1 pkgrel=0
pkgdesc="An open source desktop YouTube player built with privacy in mind." pkgdesc="An open source desktop YouTube player built with privacy in mind."
arch="x86_64 aarch64" # blocked by electron arch="x86_64 aarch64" # blocked by electron
license="AGPL-3.0-only" license="AGPL-3.0-only"
@ -50,7 +50,7 @@ package() {
} }
sha512sums=" sha512sums="
b82cdaff82d7bd325f3127794160382c97be3b72c5ef4bb3f327a8ada6b609043bc30a1f6af59c38e23237aac7d8b6ea2685c22aa82469c8d08b96cb839a3099 freetube-0.20.0.tar.gz 22e5ab677cd442d50237b2d62534698d8ad73a37e1731003dc23c4ea3da992b3cae936f0bb3a0a86cd4b7fba731c9fa53276cb0a6cd5bab213ff2a6c9006cb05 freetube-0.21.3.tar.gz
2ce2effc794bb663789cefe968b5899122127983dbfa1b240aa33a2be383720b18204e6d01b4a550df72956f02b6636b79c93a58f470a970b09b770f5b8f2fc4 freetube.sh 2ce2effc794bb663789cefe968b5899122127983dbfa1b240aa33a2be383720b18204e6d01b4a550df72956f02b6636b79c93a58f470a970b09b770f5b8f2fc4 freetube.sh
d27cb896b65a7e8d52ffe86e5f74eed72b6cf976b28e1a13012d34c7eceba5ff6f20298017738dfa93c0336ffa52b8ee4da7e06b02747062898db7e678819526 tasje-dotdash.patch d27cb896b65a7e8d52ffe86e5f74eed72b6cf976b28e1a13012d34c7eceba5ff6f20298017738dfa93c0336ffa52b8ee4da7e06b02747062898db7e678819526 tasje-dotdash.patch
" "

View file

@ -0,0 +1,93 @@
# Contributor: Rogério da Silva Yokomizo <me@ro.ger.io>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Rogério da Silva Yokomizo <me@ro.ger.io>
pkgname=looking-glass
_gittag=b7_git20240607
pkgver=7b_git20240607
pkgrel=0
pkgdesc="Allows the use of a KVM configured for VGA PCI Pass-through without an attached physical monitor, keyboard or mouse"
url="https://looking-glass.io/"
arch="x86_64"
license="GPL-2.0-or-later"
makedepends="
cmake
fontconfig-dev
libsamplerate-dev
libx11-dev
libxcursor-dev
libxfixes-dev
libxi-dev
libxinerama-dev
libxkbcommon-dev
libxpresent-dev
libxscrnsaver-dev
nettle-dev
obs-studio-dev
pipewire-dev
pulseaudio-dev
samurai
spice-dev
wayland-dev
wayland-protocols
"
source="$pkgname-$_gittag.tar.gz::https://lab.ilot.io/mirrors/looking-glass/-/releases/$_gittag/downloads/tarball/looking-glass-$_gittag.tar.gz
missing-includes.patch
obs-plugins-lib.patch
werror.patch
"
subpackages="$pkgname-obs $pkgname-module"
builddir="$srcdir/$pkgname-$_gittag"
options="!check" # There are no tests nor --version.
build() {
cmake -S client -B build-client -G Ninja \
-DENABLE_BACKTRACE=OFF \
-DOPTIMIZE_FOR_NATIVE=OFF \
-DCMAKE_INSTALL_PREFIX=/usr
cmake -S obs -B build-obs -G Ninja \
-DENABLE_BACKTRACE=OFF \
-DOPTIMIZE_FOR_NATIVE=OFF \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build-client
cmake --build build-obs
}
package() {
DESTDIR="$pkgdir" cmake --install build-client
DESTDIR="$pkgdir" cmake --install build-obs
}
module() {
pkgdesc="Looking Glass kernel module (AKMS)"
depends="akms"
install_if="looking-glass=$pkgver-r$pkgrel"
_modver=$(awk -F "=" '{if($1=="PACKAGE_VERSION"){print $2}}' src/looking-glass-B6/module/dkms.conf | tr -d '"')
install -Dm644 "$builddir"/module/Makefile "$subpkgdir"/usr/src/looking-glass/Makefile
install -Dm644 "$builddir"/module/kvmfr* "$subpkgdir"/usr/src/looking-glass/.
cat ->> "$subpkgdir"/usr/src/looking-glass/AKMBUILD <<EOF
modname=kvmfr
modver=$pkgver
built_modules='kvmfr.ko'
EOF
chmod -R u=rwX,go=rX-w "$subpkgdir"/usr/src/looking-glass
mkdir -p "$subpkgdir"/etc/udev/rules.d
echo 'SUBSYSTEM=="kvmfr", OWNER="root", GROUP="kvm", MODE="0660"' > "$subpkgdir"/etc/udev/rules.d/99-kvmfr.rules
}
obs() {
pkgdesc="$pkgdesc (obs plugin)"
amove usr/lib/obs-plugins
}
sha512sums="
959f49c91dc7bb06dfae890547bfbd1c02bd4154f4ba1c898a12d15a3579658d65fcb9fc4b951c04180e17fc9151e551858e0fb60f20e3f1a72d19b86c7dc3db looking-glass-b7_git20240607.tar.gz
6d2449764a8316dd3c1b5cc0aa552671068f89ed2f95297f3c5256af8529b93e5ec7af8f979bd2e744fd09b11063e8a93f3ed26284f0e49294e467ca10f6e772 missing-includes.patch
33c5463412a16691f47d7833ebf81d7cf20c560a077dca141dcc9f02a5d6dfb676e483835f39a06012b114be9f509dda4614fe253bb1c72a0142e82dc265a5ca obs-plugins-lib.patch
b952d1fd284aed15bcfe7990f160dec3a4565fb5833ce339920f62de6bb46fbc09265a0a79fe80d212eecc6a1813614e1e193a8846c37e2afd18431dc3a89ca4 werror.patch
"

View file

@ -0,0 +1,2 @@
#!/bin/sh
exec /usr/sbin/akms uninstall kvmfr

View file

@ -0,0 +1,92 @@
--- a/repos/PureSpice/src/agent.c
+++ b/repos/PureSpice/src/agent.c
@@ -31,6 +31,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <assert.h>
#include <sys/ioctl.h>
--- a/repos/PureSpice/src/channel_cursor.c
+++ b/repos/PureSpice/src/channel_cursor.c
@@ -25,6 +25,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include "channel_cursor.h"
#include <stdlib.h>
+#include <string.h>
#include "messages.h"
--- a/repos/PureSpice/src/channel_display.c
+++ b/repos/PureSpice/src/channel_display.c
@@ -19,6 +19,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include "purespice.h"
#include <stdlib.h>
+#include <string.h>
#include "ps.h"
#include "log.h"
--- a/repos/PureSpice/src/channel_inputs.c
+++ b/repos/PureSpice/src/channel_inputs.c
@@ -25,6 +25,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include "messages.h"
#include <stdlib.h>
+#include <string.h>
const SpiceLinkHeader * channelInputs_getConnectPacket(void)
{
--- a/repos/PureSpice/src/channel_main.c
+++ b/repos/PureSpice/src/channel_main.c
@@ -24,6 +24,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include "messages.h"
#include <stdlib.h>
+#include <string.h>
struct ChannelMain
{
--- a/repos/PureSpice/src/channel_playback.c
+++ b/repos/PureSpice/src/channel_playback.c
@@ -26,6 +26,8 @@ Place, Suite 330, Boston, MA 02111-1307
#include "messages.h"
+#include <string.h>
+
const SpiceLinkHeader * channelPlayback_getConnectPacket(void)
{
typedef struct
--- a/repos/PureSpice/src/channel_record.c
+++ b/repos/PureSpice/src/channel_record.c
@@ -26,6 +26,8 @@ Place, Suite 330, Boston, MA 02111-1307
#include "messages.h"
+#include <string.h>
+
const SpiceLinkHeader * channelRecord_getConnectPacket(void)
{
typedef struct
--- a/repos/PureSpice/src/log.c
+++ b/repos/PureSpice/src/log.c
@@ -25,6 +25,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include <stdarg.h>
#include <stdio.h>
+#include <string.h>
static void log_stdout(const char * file, unsigned int line,
const char * function, const char * format, ...)
--- a/repos/PureSpice/src/ps.c
+++ b/repos/PureSpice/src/ps.c
@@ -37,6 +37,7 @@ Place, Suite 330, Boston, MA 02111-1307
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <assert.h>
#include <errno.h>

View file

@ -0,0 +1,25 @@
From e32b292cc1ba089db6ed28e4d5eb0fc8cc4c2235 Mon Sep 17 00:00:00 2001
From: esi <git@esibun.net>
Date: Fri, 12 May 2023 16:28:01 -0400
Subject: [PATCH] [module] Fix build on Linux 6.4 (fixes #1075)
---
module/dkms.conf | 2 +-
module/kvmfr.c | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/module/kvmfr.c b/module/kvmfr.c
index ca0cca685..c711e000e 100644
--- a/module/kvmfr.c
+++ b/module/kvmfr.c
@@ -539,7 +539,11 @@ static int __init kvmfr_module_init(void)
if (kvmfr->major < 0)
goto out_free;
+#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0)
kvmfr->pClass = class_create(THIS_MODULE, KVMFR_DEV_NAME);
+#else
+ kvmfr->pClass = class_create(KVMFR_DEV_NAME);
+#endif
if (IS_ERR(kvmfr->pClass))
goto out_unreg;

View file

@ -0,0 +1,23 @@
From 7305ce36af211220419eeab302ff28793d515df2 Mon Sep 17 00:00:00 2001
From: Geoffrey McRae <geoff@hostfission.com>
Date: Fri, 7 Jun 2024 19:01:38 +1000
Subject: [PATCH] [module] fix build on linux 6.10
Fixes #1124 - Thanks @pongo1231
---
module/dkms.conf | 2 +-
module/kvmfr.c | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/module/kvmfr.c b/module/kvmfr.c
index b5acd18de..c99a5d79c 100644
--- a/module/kvmfr.c
+++ b/module/kvmfr.c
@@ -30,6 +30,7 @@
#include <linux/highmem.h>
#include <linux/memremap.h>
#include <linux/version.h>
+#include <linux/vmalloc.h>
#include <asm/io.h>

View file

@ -0,0 +1,12 @@
--- a/obs/CMakeLists.txt
+++ b/obs/CMakeLists.txt
@@ -84,7 +84,8 @@ target_link_libraries(looking-glass-obs
)
install(TARGETS looking-glass-obs
- LIBRARY DESTINATION ${OBS_PLUGIN_PREFIX}/${CMAKE_PROJECT_NAME}/bin/${OBS_PLUGIN_DIR}
+ # LIBRARY DESTINATION ${OBS_PLUGIN_PREFIX}/${CMAKE_PROJECT_NAME}/bin/${OBS_PLUGIN_DIR}
+ LIBRARY DESTINATION /usr/lib/obs-plugins
)
feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES)

View file

@ -0,0 +1,24 @@
diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt
index 836f814..7047365 100644
--- a/client/CMakeLists.txt
+++ b/client/CMakeLists.txt
@@ -68,7 +68,6 @@ add_compile_options(
"-Wno-unused-parameter"
"$<$<COMPILE_LANGUAGE:C>:-Wstrict-prototypes>"
"$<$<C_COMPILER_ID:GNU>:-Wimplicit-fallthrough=2>"
- "-Werror"
"-Wfatal-errors"
"-ffast-math"
"-fdata-sections"
diff --git a/obs/CMakeLists.txt b/obs/CMakeLists.txt
index 0491e65..60b37ff 100644
--- a/obs/CMakeLists.txt
+++ b/obs/CMakeLists.txt
@@ -18,7 +18,6 @@ add_feature_info(ENABLE_BACKTRACE ENABLE_BACKTRACE "Backtrace support.")
add_compile_options(
"-Wall"
- "-Werror"
"-Wfatal-errors"
"-ffast-math"
"-fdata-sections"

View file

@ -0,0 +1,46 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-apsw
_pkgname=apsw
pkgver=3.45.2.0
pkgrel=1
pkgdesc="Another Python SQLite Wrapper"
url="https://github.com/rogerbinns/apsw"
arch="all"
license="Zlib"
depends="python3"
makedepends="
python3-dev
py3-gpep517
py3-setuptools
py3-wheel
sqlite-dev
"
subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.zip::https://github.com/rogerbinns/apsw/releases/download/$pkgver/apsw-$pkgver.zip
detect-sqlite-config.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 setup.py build_test_extension test
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
0260f6479d5f1188ad172dfc0dd7e4a03c9d809d2f80c2296e587a19286681bb2ce759b0bd19ec6957e2902f18729b7e79410e4db79dff9918089f57dd510828 py3-apsw-3.45.2.0.zip
8f3957bd6fecb5660a7cab367043e4ccdacd87d8963bbe41cc3d525265de28f08aa207099658d785be29c5c90b818c1418f766995cd780d02b8e36252a389758 detect-sqlite-config.patch
"

View file

@ -0,0 +1,8 @@
diff --git a/setup.apsw b/setup.apsw
index 68dedb9..3ceb10b 100644
--- a/setup.apsw
+++ b/setup.apsw
@@ -1 +1,3 @@
# You can put ini format directives here in addition to command line flags
+[build_ext]
+use_system_sqlite_config = True

View file

@ -0,0 +1,41 @@
# Maintainer: Cowington Post <cowingtonpost@gmail.com>
pkgname=py3-html5-parser
pkgver=0.4.12
pkgrel=1
pkgdesc="Fast C based HTML 5 parsing for python"
url="https://github.com/kovidgoyal/html5-parser"
arch="all"
license="Apache-2.0"
depends="py3-lxml py3-chardet"
makedepends="
libxml2-dev
py3-gpep517
py3-setuptools
py3-wheel
python3-dev
"
checkdepends="py3-beautifulsoup4"
subpackages="$pkgname-pyc"
source="https://github.com/kovidgoyal/html5-parser/archive/v$pkgver/py3-html5-parser-$pkgver.tar.gz"
builddir="$srcdir/html5-parser-$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 setup.py test
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
d2c031225b74d01a1ae3455837ac09e9afad8a4ec6ab1b8f66cbea8a86188db271a72570ef06e05ac56d369b41d97fc6f382455e25ca346a1897f62a3696a252 py3-html5-parser-0.4.12.tar.gz
"

View file

@ -1,13 +1,13 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks> # Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=signal-desktop pkgname=signal-desktop
pkgver=7.9.0 pkgver=7.33.0
pkgrel=0 pkgrel=0
pkgdesc="A messaging app for simple private communication with friends" pkgdesc="A messaging app for simple private communication with friends"
url="https://github.com/signalapp/Signal-Desktop/" url="https://github.com/signalapp/Signal-Desktop/"
# same as electron # same as electron
# build failure arch="aarch64 x86_64"
#arch="aarch64 x86_64"
license="AGPL-3.0-only" license="AGPL-3.0-only"
depends=" depends="
electron electron
@ -43,6 +43,7 @@ makedepends="
libsecret-dev libsecret-dev
libvpx-dev libvpx-dev
libwebp-dev libwebp-dev
libxml2-dev
lld lld
llvm-dev llvm-dev
mesa-dev mesa-dev
@ -63,34 +64,26 @@ makedepends="
" "
options="net !check" options="net !check"
# follow signal-desktop package.json -> @signalapp/libsignal-client # use _check_depends to validate this
_libsignalver=0.45.0 _libsignalver=0.59.0
_ringrtcver=2.48.6
# follow signal-desktop package.json -> @signalapp/ringrtc _webrtcver=6723a
_ringrtcver=2.41.0
# follow ringrtc (on version above) -> config/version.properties -> webrtc.version
# downloading tarball generated with abuild snapshot (with gclient dependencies fetched)
_webrtcver=6261g
# follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION
# last bsqlite version: 8.7.1
_stokenizerver=0.2.1 _stokenizerver=0.2.1
source=" source="
https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v$pkgver/Signal-Desktop-$pkgver.tar.gz 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/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://github.com/signalapp/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz
https://ab-sn.lnl.gay/webrtc-$_webrtcver.tar.zst https://ayakael.net/api/packages/mirrors/generic/webrtc/$_webrtcver/webrtc-$_webrtcver.tar.zst
https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz
bettersqlite-use-system-sqlcipher.patch
libsignal-auditable.patch libsignal-auditable.patch
signal-use-system-sqlcipher.patch
signal-disable-updates.patch signal-disable-updates.patch
signal-update-links.patch signal-update-links.patch
signal-show-window-please.patch signal-show-window-please.patch
ringrtc-webrtc-renamed.patch ringrtc-webrtc-renamed.patch
webrtc-shared-like-my-wife.patch webrtc-shared-libs.patch
webrtc-compiler.patch webrtc-compiler.patch
webrtc-gcc13.patch webrtc-gcc13.patch
@ -118,6 +111,26 @@ export CARGO_PROFILE_RELEASE_STRIP="symbols"
export YARN_CACHE_FOLDER="$srcdir/.yarn" export YARN_CACHE_FOLDER="$srcdir/.yarn"
_check_depends() {
# _libsignalver: follow signal-desktop package.json -> @signalapp/libsignal-client
# _ringrtcver: follow signal-desktop package.json -> @signalapp/ringrtc
# _webrtcver: follow ringrtc (on version above) -> config/version.properties -> webrtc.version
# downloading tarball generated with abuild snapshot (with gclient dependencies fetched)
# _stokenizerver: follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION
local _libsignalver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package-lock.json | grep "@signalapp/libsignal-client\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1)
local _ringrtcver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package-lock.json | grep "@signalapp/ringrtc\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1)
local _bsqlitever=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package-lock.json | grep "@signalapp/better-sqlite3\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1)
local _webrtcver=$(curl --silent https://raw.githubusercontent.com/signalapp/ringrtc/v$_ringrtcver/config/version.properties | awk -F '=' '{if($1 == "webrtc.version"){print $2}}' | head -n 1)
local _extensionver=$(curl --silent https://raw.githubusercontent.com/signalapp/better-sqlite3/v$_bsqlitever/deps/download.js | grep "const EXTENSION_VERSION" | awk '{print $4}' | tr -d "'" | tr -d ';' | head -n 1)
local _stokenizerver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Sqlcipher-Extension/refs/tags/v$_extensionver/Cargo.lock | sed -n "/^name = \"signal-tokenizer\"$/,/^$/p" | awk -F ' = ' '{if($1=="version"){print $2}}' | tr -d '"')
echo _libsignalver=$_libsignalver
echo _ringrtcver=$_ringrtcver
echo _webrtcver=$_webrtcver
echo _stokenizerver=$_stokenizerver
}
# webrtc only, the other dependencies are fine with tarballs # webrtc only, the other dependencies are fine with tarballs
_distbucket="sakamoto/lnl-aports-snapshots/" _distbucket="sakamoto/lnl-aports-snapshots/"
snapshot() { snapshot() {
@ -167,39 +180,19 @@ target_cpu_only = True
mcli cp "$SRCDEST"/webrtc-$_webrtcver.tar.zst "$_distbucket" mcli cp "$SRCDEST"/webrtc-$_webrtcver.tar.zst "$_distbucket"
} }
# manual patches
default_prepare() { :; }
prepare() { prepare() {
default_prepare # Moves to builddir to use abuild patch logics
msg "Applying patches" for i in libsignal-$_libsignalver ringrtc-$_ringrtcver webrtc-$_webrtcver Signal-FTS5-Extension-$_stokenizerver; do
for x in $source; do mv "$srcdir"/$i "$builddir"/${i%-*}
case "$x" in
signal-*.patch)
msg "$x"
patch -p1 -i "$srcdir"/$x -d "$srcdir"/Signal-Desktop-$pkgver
;;
libsignal-*.patch)
msg "$x"
patch -p1 -i "$srcdir"/$x -d "$srcdir"/libsignal-$_libsignalver
;;
ringrtc-*.patch)
msg "$x"
patch -p1 -i "$srcdir"/$x -d "$srcdir"/ringrtc-$_ringrtcver
;;
webrtc-*.patch)
msg "$x"
patch -p1 -i "$srcdir"/$x -d "$srcdir"/webrtc-$_webrtcver
;;
esac
done done
msg "Installing signal-desktop JS dependencies" msg "Installing signal-desktop JS dependencies"
echo 'ignore-engines true' > .yarnrc npm ci --ignore-scripts
yarn --ignore-scripts --frozen-lockfile
default_prepare
( (
cd "$srcdir"/webrtc-$_webrtcver cd "$builddir"/webrtc
local use_system=" local use_system="
brotli brotli
@ -239,6 +232,7 @@ prepare() {
\! -path "*third_party/$_lib/google/*" \ \! -path "*third_party/$_lib/google/*" \
\! -path './base/third_party/icu/*' \ \! -path './base/third_party/icu/*' \
\! -path './third_party/libxml/*' \ \! -path './third_party/libxml/*' \
\! -path './third_party/re2/*' \
\! -path './third_party/pdfium/third_party/freetype/include/pstables.h' \ \! -path './third_party/pdfium/third_party/freetype/include/pstables.h' \
\! -path './third_party/harfbuzz-ng/utils/hb_scoped.h' \ \! -path './third_party/harfbuzz-ng/utils/hb_scoped.h' \
\! -path './third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h' \ \! -path './third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h' \
@ -259,35 +253,35 @@ prepare() {
) )
( (
cd "$srcdir"/ringrtc-$_ringrtcver/src/rust cd "$builddir"/ringrtc/src/rust
msg "Installing ringrtc rust dependencies" msg "Installing ringrtc rust dependencies"
cargo fetch --target="$CTARGET" --locked cargo fetch --target="$CTARGET" --locked
) )
( (
cd "$srcdir"/libsignal-$_libsignalver cd "$builddir"/libsignal
msg "Installing libsignal rust dependencies" msg "Installing libsignal rust dependencies"
cargo fetch --target="$CTARGET" --locked cargo fetch --target="$CTARGET" --locked
) )
( (
cd "$srcdir"/Signal-FTS5-Extension-$_stokenizerver cd "$builddir"/Signal-FTS5-Extension
msg "Installing signal tokenizer rust dependencies" msg "Installing signal tokenizer rust dependencies"
cargo fetch --target="$CTARGET" --locked cargo fetch --target="$CTARGET" --locked
) )
( (
cd "$srcdir"/ringrtc-$_ringrtcver/src/node cd "$builddir"/ringrtc/src/node
msg "Installing ringrtc js dependencies" msg "Installing ringrtc js dependencies"
yarn --frozen-lockfile --ignore-scripts npm ci --ignore-scripts
) )
( (
cd "$srcdir"/libsignal-$_libsignalver/node cd "$builddir"/libsignal/node
# fix target # fix target
sed -i 's/unknown-linux-gnu/alpine-linux-musl/g' binding.gyp sed -i 's/unknown-linux-gnu/alpine-linux-musl/g' binding.gyp
@ -305,7 +299,7 @@ build() {
# required dependency of ringrtc # required dependency of ringrtc
( (
cd "$srcdir"/webrtc-$_webrtcver cd "$builddir"/webrtc
export PATH="$PWD/path:$PATH" export PATH="$PWD/path:$PATH"
# shellcheck disable=2089 # shellcheck disable=2089
@ -337,18 +331,18 @@ build() {
use_lld=true use_lld=true
use_sysroot=false use_sysroot=false
" "
mkdir -p "$srcdir"/ringrtc-$_ringrtcver/out/release mkdir -p "$builddir"/ringrtc/out/release
msg "Building signal's webrtc" msg "Building signal's webrtc"
# shellcheck disable=2090,2116 # shellcheck disable=2090,2116
gn gen "$srcdir"/ringrtc-$_ringrtcver/out/release --args="$(echo $webrtc_args)" gn gen "$builddir"/ringrtc/out/release --args="$(echo $webrtc_args)"
ninja -C "$srcdir"/ringrtc-$_ringrtcver/out/release signaldeswebrtc ninja -C "$builddir"/ringrtc/out/release signaldeswebrtc
) )
( (
cd "$srcdir"/ringrtc-$_ringrtcver cd "$builddir"/ringrtc
msg "Building libringrtc" msg "Building libringrtc"
OUTPUT_DIR="$srcdir"/ringrtc-$_ringrtcver/out \ OUTPUT_DIR="$builddir"/ringrtc/out \
cargo auditable build --features electron --release -p ringrtc cargo auditable build --features electron --release -p ringrtc
mkdir -p src/node/build/linux mkdir -p src/node/build/linux
@ -357,34 +351,34 @@ build() {
) )
( (
cd "$srcdir"/ringrtc-$_ringrtcver/src/node cd "$builddir"/ringrtc/src/node
msg "Building ringrtc JS glue code" msg "Building ringrtc JS glue code"
yarn build npm run build
msg "Cleaning dev dependencies for ringrtc" msg "Cleaning dev dependencies for ringrtc"
yarn --ignore-scripts --frozen-lockfile --production npm prune --ignore-scripts --omit=dev
) )
# module on npm intentionally unbuildable: https://github.com/signalapp/libsignal/issues/464#issuecomment-1160665052 # module on npm intentionally unbuildable: https://github.com/signalapp/libsignal/issues/464#issuecomment-1160665052
( (
cd "$srcdir"/libsignal-$_libsignalver/node cd "$builddir"/libsignal/node
msg "Building libsignal" msg "Building libsignal"
yarn node-gyp configure --nodedir=/usr/include/electron/node_headers --build-from-source node-gyp configure --nodedir=/usr/include/electron/node_headers --build-from-source
yarn node-gyp build --nodedir=/usr/include/electron/node_headers --build-from-source node-gyp build --nodedir=/usr/include/electron/node_headers --build-from-source
mkdir -p prebuilds/linux-$chromium_arch mkdir -p prebuilds/linux-$chromium_arch
mv build/Release/libsignal_client_linux_$chromium_arch.node prebuilds/linux-$chromium_arch/node.napi.node mv build/Release/libsignal_client_linux_$chromium_arch.node prebuilds/linux-$chromium_arch/node.napi.node
msg "Building libsignal glue code" msg "Building libsignal glue code"
yarn tsc npm run tsc
msg "Cleaning dev dependencies for libsignal" msg "Cleaning dev dependencies for libsignal"
yarn --ignore-scripts --frozen-lockfile --production npm prune -ignore-scripts --omit=dev
) )
( (
cd "$srcdir"/Signal-FTS5-Extension-$_stokenizerver cd "$builddir"/Signal-FTS5-Extension
msg "Building signal tokenizer" msg "Building signal tokenizer"
cargo auditable build --features extension --release --frozen cargo auditable build --features extension --release --frozen
@ -392,8 +386,8 @@ build() {
) )
# from package.json postinstall # from package.json postinstall
yarn build:acknowledgments npm run build:acknowledgments
yarn patch-package npm exec patch-package
rm -rf node_modules/dtrace-provider rm -rf node_modules/dtrace-provider
# get esbuild installed (needed for next step) # get esbuild installed (needed for next step)
@ -403,42 +397,22 @@ build() {
NODE_ENV=production \ NODE_ENV=production \
SIGNAL_ENV=production \ SIGNAL_ENV=production \
NODE_OPTIONS=--openssl-legacy-provider \ NODE_OPTIONS=--openssl-legacy-provider \
yarn build:dev npm run build:dev
# purge non-production deps # purge non-production deps
yarn install --ignore-scripts --frozen-lockfile --production npm prune --ignore-scripts --omit=dev
# XXX: the previous step undoes the patches. and removes the patch applier.
# please force me to just implement packaging without dev modules in tasje. -lnl
for x in patches/*.patch; do
# some of these patches are made for devDependencies
if [ -d "$(grep -Eo 'node_modules/(@[a-z\d_-]+/)?[a-z\d_-]+/' "$x" | head -n1)" ]; then
msg "$x"
patch -Np1 -i ./"$x"
fi
done
# use our libsignal # use our libsignal
rm -rf node_modules/@signalapp/libsignal-client/ rm -rf node_modules/@signalapp/libsignal-client/
mv "$srcdir"/libsignal-$_libsignalver/node/ node_modules/@signalapp/libsignal-client mv libsignal/node/ node_modules/@signalapp/libsignal-client
# use our libringrtc # use our libringrtc
rm -rf node_modules/@signalapp/ringrtc/ rm -rf node_modules/@signalapp/ringrtc/
mv "$srcdir"/ringrtc-$_ringrtcver/src/node/ node_modules/@signalapp/ringrtc mv ringrtc/src/node/ node_modules/@signalapp/ringrtc
# patch the sqlcipher module
for x in $source; do
case "$x" in
bettersqlite-*.patch)
msg "$x"
patch -Np1 -i "$srcdir"/$x -d "$srcdir"/Signal-Desktop-$pkgver/node_modules/@signalapp/better-sqlite3/
;;
esac
done
mkdir node_modules/@signalapp/better-sqlite3/tokenizer mkdir node_modules/@signalapp/better-sqlite3/tokenizer
mv "$srcdir"/Signal-FTS5-Extension-$_stokenizerver/target/release/libsignal_tokenizer.a node_modules/@signalapp/better-sqlite3/tokenizer/ mv Signal-FTS5-Extension/target/release/libsignal_tokenizer.a node_modules/@signalapp/better-sqlite3/tokenizer/
mv "$srcdir"/Signal-FTS5-Extension-$_stokenizerver/target/release/signal-tokenizer.h node_modules/@signalapp/better-sqlite3/tokenizer/ mv Signal-FTS5-Extension/target/release/signal-tokenizer.h node_modules/@signalapp/better-sqlite3/tokenizer/
npm rebuild \ npm rebuild \
sharp @signalapp/better-sqlite3 spellchecker websocket \ sharp @signalapp/better-sqlite3 spellchecker websocket \
@ -451,7 +425,7 @@ build() {
check() { check() {
# tests run against downloaded build of electron for glibc, probably can be patched # tests run against downloaded build of electron for glibc, probably can be patched
yarn test npm run test
} }
package() { package() {
@ -462,9 +436,9 @@ package() {
install -Dm644 signal.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop install -Dm644 signal.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
# this should be in /usr/lib/signal-desktop. however, it does not simply work and I stopped to care # this should be in /usr/lib/signal-desktop. however, it does not simply work and I stopped to care
install -Dm755 "$srcdir"/ringrtc-$_ringrtcver/out/release/libsignaldeswebrtc.so "$pkgdir"/usr/lib/libsignaldeswebrtc.so install -Dm755 "$builddir"/ringrtc/out/release/libsignaldeswebrtc.so "$pkgdir"/usr/lib/libsignaldeswebrtc.so
install -Dm755 "$srcdir"/$pkgname "$pkgdir"/usr/bin/$pkgname install -Dm755 "$srcdir"/signal-desktop "$pkgdir"/usr/bin/signal-desktop
while read -r size; do while read -r size; do
install -Dm644 icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png install -Dm644 icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png
@ -472,19 +446,19 @@ package() {
} }
sha512sums=" sha512sums="
53ef9feccdbe1c52eee88d2e2ed337746dcaf0fd18ee0d462ba3faaef02b38e9ba7269857e975f241c719d6750ce01fc42b0d90bbd9ef7bbee14b9b4540adbb8 Signal-Desktop-7.9.0.tar.gz 7edc143a2d47bb0ec4f75f6a2916ec9b94bfd21ac42f738e9d49d3e8ffd88b7cb89cdcc9fc8bd8c301e927268422ecdf74265e3915dc467de690221018e4d123 Signal-Desktop-7.33.0.tar.gz
70f2cb7d05e019235cd044c401bcf072a934fdfea4a161ef5be988d2e3932ba5233110b4b06525e6f33ea9cad036def442e70adad15eab883903d9246969896e libsignal-0.45.0.tar.gz 4c586c465c9222bdb40b526fe899ed546f9f6f027353860ed9d78356af915b9b77391f0282e971213606e61eb33e4b19107e5a63cdb54b8dbc48a9bca5389eec libsignal-0.59.0.tar.gz
3adccc33d4efa29e003175d0e00cceb169426a73f467ea32406e9cd721c72aeaa45a7816985e484b8adceb2de2a6405f306f6d609b43a25c950b18dd49a14476 ringrtc-2.41.0.tar.gz 89e1baf3052eb76ef2104e93a75c53da6e3be88d82b7ef83e7661bbcf186ea7b4c01e7bc71c7dbbe1757039f60b661c1a55833c30d4ace074c6238019429ae17 ringrtc-2.48.6.tar.gz
6dc8c709986816e724a57d056a165cf72db70644593e8de8e3026e511d1f8f3d6d5e171d500cfabe760309c5a81795b667b4399c9885be30163d326cbc82c1b4 webrtc-6261g.tar.zst 64eed5c2a6f5a505d014bc4fa80e15b21103df1ea27825eaa1dfecc23c269f198a7e98472f29de7cae4ac7fa4fede6e837c27494b8ec4d03e36b85b029c64831 webrtc-6723a.tar.zst
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz 84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
be5b4e823543b79175a12314f10c6326d9f0d59f470136962daed4665887006acc05b48b40dc1b67747396d8f6f7d23be298c1e110ccdd35ff9b09d5e6b80bab bettersqlite-use-system-sqlcipher.patch 8d2d2d82c8546c2dd1fef161b61df79918f8c22235a56a46adb375a0beb4acef12c5fe53e67242a4be97f77adc522ff79b47949c352956c742a70d50f4179f7f libsignal-auditable.patch
92de6fc7cc5f2b6d65bedbd74cc733dd86dafc9cbfb9b727c3267aef63a71a07247cde9b163c68fddfeb9096dcd7f554d36d0b2de078d8905e3825645ddbd6eb libsignal-auditable.patch cee74edb504ee5ae685e8a449ac35fabf949c33bfee5905778f850c3b18e17f9ae9bd501c89a7fd2c9c81a5bb2b0af0c0b3c72e32128603b3923c32d2a493ce9 signal-use-system-sqlcipher.patch
152435231cdcf52a17a9e24aadf95d77511258e818172941ba074a73a90a541f0136feb58868674f2bcb19191a6d12933fe6cd5baf3ee99e508915c72523163b signal-disable-updates.patch 152435231cdcf52a17a9e24aadf95d77511258e818172941ba074a73a90a541f0136feb58868674f2bcb19191a6d12933fe6cd5baf3ee99e508915c72523163b signal-disable-updates.patch
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
646d303fe58cae3f0896ae0275a66695b902fae6ddde7c568cc9798157dee9f45ceff907bc951fadc4c511d512a73d114b4e4f7c8914e2311c63929d29e1621a signal-show-window-please.patch bfc8acdd13aa48d29c7657311733cc9d33c4899782efbd1ef6d25ad1698be4de7cc67e829324bc0309715d69ae37ea9f782cf54887317e817213e110d73d68e7 signal-show-window-please.patch
ab51b8fdcda1d8811213d2c5d8cb5d8457b478a02e23ce40f36b38ec56d45a3bd7a2d184720c27046f98a27771551cfad93c1290fe93856cc02695d318b33e47 ringrtc-webrtc-renamed.patch 10284e0d86ab88de161ae689871082194f689ce416f3ebada8991d5db707994ea1cb8b4212756dd93ba5a3469964050988220f18afc37e38f3404a6e17ec8caf ringrtc-webrtc-renamed.patch
9d92389637cdda83a0a7039fa6c52516d7bc491d0b1e42d5374b9d1f4fa7b9c930642f2dca896da17a2dc3344fa1bb97434c8dddd0539a4fedfd0dec809fc875 webrtc-shared-like-my-wife.patch 98a7e4df27c3ed56c5968ebc3ae8e08bfb54362d0c910f9af1d414079a6d5fe0f18aa570ae3c38042f4691af6a130cb3ff689625e26a3987720dd319a5f587b1 webrtc-shared-libs.patch
e07ae8544988d402aaf0fbd95ea36a64c94c59566c561132578aa6dcf8ff11a34058530e64dc204e5cadc2482f1401e74b32384a144e5e08017c663d0cf7c2fc webrtc-compiler.patch fe78cdc58c18826fc4227cc8e9377980766229390544578f6a1a6f7322bc3243c066963b589323dbfe4f2bfd37f8859ad84f63cb3783317892e5ae3652270a3a webrtc-compiler.patch
88515d8b8cc82355c9f9b0f44fac83b7ff149b13e9fb102fd46036ec5234cfb2385fa5ad58a0520ee604b93dc4ddd6ae18a7005978ef207841645724ef7a9749 webrtc-gcc13.patch 48ab5c733e643eaff08ccbe839086bebbb68d397984ad7c5c5b68df8071f75d2dfe92c3f52d9fbf9b81754934bdfa8a67c69addd476ce4265b978592fb4ff9bd webrtc-gcc13.patch
87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop 87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop
" "

View file

@ -1,56 +0,0 @@
--- a/binding.gyp
+++ b/binding.gyp
@@ -7,7 +7,16 @@
'targets': [
{
'target_name': 'better_sqlite3',
- 'dependencies': ['deps/sqlite3.gyp:sqlite3'],
+ 'include_dirs': [
+ '/usr/include/sqlcipher',
+ 'tokenizer',
+ ],
+ 'link_settings': {
+ 'libraries': [
+ '-lsqlcipher',
+ '<!(pwd)/tokenizer/libsignal_tokenizer.a',
+ ]
+ },
'sources': ['src/better_sqlite3.cpp'],
'cflags_cc': ['-std=c++17'],
'xcode_settings': {
@@ -24,14 +33,22 @@
['OS=="linux"', {
'ldflags': [
'-Wl,-Bsymbolic',
- '-Wl,--exclude-libs,ALL',
],
}],
],
},
{
'target_name': 'test_extension',
- 'dependencies': ['deps/sqlite3.gyp:sqlite3'],
+ 'include_dirs': [
+ '/usr/include/sqlcipher',
+ 'tokenizer',
+ ],
+ 'link_settings': {
+ 'libraries': [
+ '-lsqlcipher',
+ '<!(pwd)/tokenizer/libsignal_tokenizer.a',
+ ]
+ },
'conditions': [['sqlite3 == ""', { 'sources': ['deps/test_extension.c'] }]],
},
],
--- a/package.json
+++ b/package.json
@@ -34,7 +34,7 @@
"sqlite3": "^5.0.2"
},
"scripts": {
- "install": "npm run download && npm run build-release",
+ "install": "npm run build-release",
"build-release": "node-gyp rebuild --release",
"build-debug": "node-gyp rebuild --debug",
"rebuild-release": "npm run lzz && npm run build-release",

View file

@ -1,11 +1,13 @@
--- ./node/build_node_bridge.py.orig diff --git a/libsignal/node/build_node_bridge.py.orig b/libsignal/node/build_node_bridge.py
+++ ./node/build_node_bridge.py index e75c2d0..3bdb328 100755
@@ -63,7 +63,7 @@ --- a/libsignal/node/build_node_bridge.py.orig
+++ b/libsignal/node/build_node_bridge.py
@@ -97,7 +97,7 @@ def main(args: Optional[List[str]] = None) -> int:
if 'npm_config_libsignal_debug_level_logs' not in os.environ:
features.append('log/release_max_level_info')
out_dir = options.out_dir.strip('"') or os.path.join('build', configuration_name) - cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', ','.join(features)]
+ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', ','.join(features)]
- 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': if configuration_name == 'Release':
cmdline.append('--release') cmdline.append('--release')
print("Running '%s'" % (' '.join(cmdline))) print("Running '%s'" % (' '.join(cmdline)))

View file

@ -1,19 +1,23 @@
--- ./src/rust/build.rs.orig --- ./ringrtc/src/rust/build.rs.orig
+++ ./src/rust/build.rs +++ ./ringrtc/src/rust/build.rs
@@ -41,15 +41,15 @@ @@ -79,6 +79,7 @@
if cfg!(feature = "native") {
if let Ok(out_dir) = out_dir {
println!(
- "cargo:rustc-link-search=native={}/{}/obj/",
+ "cargo:rustc-link-search=native={}/{}/",
out_dir, build_type,
);
- println!("cargo:rerun-if-changed={}/{}/obj/", out_dir, build_type,);
+ println!("cargo:rerun-if-changed={}/{}/", out_dir, build_type,);
} else {
println!("cargo:warning=No WebRTC output directory (OUTPUT_DIR) defined!");
}
if cfg!(feature = "native") {
let webrtc_dir = if cfg!(feature = "prebuilt_webrtc") {
+ panic!("trying to download prebuild webrtc");
if let Err(e) = fs::create_dir_all(&out_dir) {
panic!("Failed to create webrtc out directory: {:?}", e);
}
@@ -86,12 +87,12 @@
// Ignore build type since we only have release prebuilts
format!("{}/release/obj/", out_dir)
} else {
- format!("{}/{}/obj", out_dir, build_type)
+ format!("{}/{}", out_dir, build_type)
};
println!("cargo:rerun-if-changed={}", webrtc_dir);
println!("cargo:rerun-if-changed={}", config_dir());
println!("cargo:rustc-link-search=native={}", webrtc_dir);
- println!("cargo:rustc-link-lib=webrtc"); - println!("cargo:rustc-link-lib=webrtc");
+ println!("cargo:rustc-link-lib=dylib=signaldeswebrtc"); + println!("cargo:rustc-link-lib=dylib=signaldeswebrtc");

View file

@ -1,11 +1,13 @@
--- ./app/main.ts.orig diff --git a/app/main.ts.orig b/app/main.ts
+++ ./app/main.ts index aa1bec8..bd7c1d5 100644
@@ -721,7 +721,7 @@ --- a/app/main.ts.orig
const titleBarOverlay = await getTitleBarOverlay(); +++ b/app/main.ts
@@ -690,7 +690,7 @@ async function createWindow() {
: DEFAULT_HEIGHT;
const windowOptions: Electron.BrowserWindowConstructorOptions = { const windowOptions: Electron.BrowserWindowConstructorOptions = {
- show: false, - show: false,
+ show: true, + show: true,
width: DEFAULT_WIDTH, width,
height: DEFAULT_HEIGHT, height,
minWidth: MIN_WIDTH, minWidth: MIN_WIDTH,

View file

@ -0,0 +1,43 @@
diff --git a/node_modules/@signalapp/better-sqlite3/binding.gyp.orig b/node_modules/@signalapp/better-sqlite3/binding.gyp
index c370c30b309..bf0207e6fec 100644
--- a/node_modules/@signalapp/better-sqlite3/binding.gyp.orig
+++ b/node_modules/@signalapp/better-sqlite3/binding.gyp
@@ -7,7 +7,16 @@
'targets': [
{
'target_name': 'better_sqlite3',
- 'dependencies': ['deps/sqlite3.gyp:sqlite3'],
+ 'include_dirs': [
+ '/usr/include/sqlcipher',
+ 'tokenizer',
+ ],
+ 'link_settings': {
+ 'libraries': [
+ '-lsqlcipher',
+ '<!(pwd)/tokenizer/libsignal_tokenizer.a',
+ ]
+ },
'sources': ['src/better_sqlite3.cpp'],
'cflags_cc': ['-std=c++20'],
'msvs_settings': {
@@ -21,7 +30,6 @@
['OS=="linux"', {
'ldflags': [
'-Wl,-Bsymbolic',
- '-Wl,--exclude-libs,ALL',
],
}],
],
diff --git a/node_modules/@signalapp/better-sqlite3/package.json.orig b/node_modules/@signalapp/better-sqlite3/package.json
index fbb9d360352..a9217039c01 100644
--- a/node_modules/@signalapp/better-sqlite3/package.json.orig
+++ b/node_modules/@signalapp/better-sqlite3/package.json
@@ -35,7 +35,7 @@
},
"scripts": {
"format": "xcrun clang-format --style=chromium -Werror --verbose -i src/*.cpp src/*.hpp",
- "install": "npm run download && npm run build-release",
+ "install": "npm run build-release",
"build-release": "node-gyp rebuild --release",
"build-debug": "node-gyp rebuild --debug",
"test": "mocha --exit --slow=75 --timeout=5000",

View file

@ -1,5 +1,5 @@
--- ./build/config/compiler/BUILD.gn.orig --- ./webrtc/build/config/compiler/BUILD.gn.orig
+++ ./build/config/compiler/BUILD.gn +++ ./webrtc/build/config/compiler/BUILD.gn
@@ -624,14 +624,14 @@ @@ -624,14 +624,14 @@
if (default_toolchain != "//build/toolchain/cros:target" && if (default_toolchain != "//build/toolchain/cros:target" &&
!llvm_android_mainline) { !llvm_android_mainline) {

View file

@ -1,5 +1,5 @@
--- ./rtc_base/system/file_wrapper.h.orig --- ./webrtc/rtc_base/system/file_wrapper.h.orig
+++ ./rtc_base/system/file_wrapper.h +++ ./webrtc/rtc_base/system/file_wrapper.h
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
#include <stddef.h> #include <stddef.h>
@ -8,8 +8,8 @@
#include <string> #include <string>
--- ./modules/audio_coding/neteq/reorder_optimizer.cc.orig --- ./webrtc/modules/audio_coding/neteq/reorder_optimizer.cc.orig
+++ ./modules/audio_coding/neteq/reorder_optimizer.cc +++ ./webrtc/modules/audio_coding/neteq/reorder_optimizer.cc
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@
#include "modules/audio_coding/neteq/reorder_optimizer.h" #include "modules/audio_coding/neteq/reorder_optimizer.h"

View file

@ -0,0 +1,64 @@
--- ./webrtc/BUILD.gn.orig
+++ ./webrtc/BUILD.gn
@@ -38,7 +38,7 @@
# 'ninja default' and then 'ninja all', the second build should do no work.
group("default") {
testonly = true
- deps = [ ":webrtc" ]
+ deps = [ ":signaldeswebrtc" ]
if (rtc_build_examples) {
deps += [ "examples" ]
}
@@ -464,7 +464,7 @@
if (!build_with_chromium) {
# Target to build all the WebRTC production code.
- rtc_static_library("webrtc") {
+ rtc_shared_library("signaldeswebrtc") {
# Only the root target and the test should depend on this.
visibility = [
"//:default",
@@ -472,7 +472,6 @@
]
sources = []
- complete_static_lib = true
suppressed_configs += [ "//build/config/compiler:thin_archive" ]
defines = []
diff --git a/webrtc/third_party/googletest/BUILD.gn.orig b/webrtc/third_party/googletest/BUILD.gn
index 14089f0..b7dc621 100644
--- a/webrtc/third_party/googletest/BUILD.gn.orig
+++ b/webrtc/third_party/googletest/BUILD.gn
@@ -48,7 +48,6 @@ config("gtest_config") {
configs = [
"//third_party/abseil-cpp:absl_include_config",
- "//third_party/re2:re2_config",
]
}
diff --git a/webrtc/third_party/googletest/BUILD.gn.orig b/webrtc/third_party/googletest/BUILD.gn
index b7dc621..367f929 100644
--- a/webrtc/third_party/googletest/BUILD.gn.orig
+++ b/webrtc/third_party/googletest/BUILD.gn
@@ -133,7 +133,6 @@ source_set("gtest") {
# googletest only needs `absl`, but this makes gn check happier.
deps = [ "//third_party/abseil-cpp:absl_full" ]
- public_deps = [ "//third_party/re2" ]
if (is_nacl || !build_with_chromium) {
defines += [ "GTEST_DISABLE_PRINT_STACK_TRACE" ]
sources -= [
diff --git a/webrtc/third_party/fuzztest/BUILD.gn.orig b/webrtc/third_party/fuzztest/BUILD.gn
index 57ee790..ba1d297 100644
--- a/webrtc/third_party/fuzztest/BUILD.gn.orig
+++ b/webrtc/third_party/fuzztest/BUILD.gn
@@ -309,7 +309,6 @@ source_set("fuzztest_internal") {
# For RE2 mutators. It's questionable whether we want to pull this library
# into every fuzztest target, but this is the approach used in other
# fuzztest contexts so we'll do the same
- "//third_party/re2",
# For protobuf mutators
"$protobuf_target_prefix:protobuf_lite",

View file

@ -1,28 +0,0 @@
--- ./BUILD.gn.orig
+++ ./BUILD.gn
@@ -38,7 +38,7 @@
# 'ninja default' and then 'ninja all', the second build should do no work.
group("default") {
testonly = true
- deps = [ ":webrtc" ]
+ deps = [ ":signaldeswebrtc" ]
if (rtc_build_examples) {
deps += [ "examples" ]
}
@@ -464,7 +464,7 @@
if (!build_with_chromium) {
# Target to build all the WebRTC production code.
- rtc_static_library("webrtc") {
+ rtc_shared_library("signaldeswebrtc") {
# Only the root target and the test should depend on this.
visibility = [
"//:default",
@@ -472,7 +472,6 @@
]
sources = []
- complete_static_lib = true
suppressed_configs += [ "//build/config/compiler:thin_archive" ]
defines = []

View file

@ -1,32 +1,29 @@
# Maintainer: Antoine Martin <dev@ayakael.net> # Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=firefly-iii-plaid-connector pkgname=firefly-iii-plaid-connector
pkgver=0.3.1 pkgver=0.3.1
pkgrel=5 pkgrel=7
pkgdesc='The Free Software Media System' pkgdesc="The Free Software Media System"
arch='i686 x86_64' #arch="x86_64"
url='https://gitlab.com/GeorgeHahn/firefly-plaid-connector' url="https://gitlab.com/GeorgeHahn/firefly-plaid-connector"
license='MIT' license="MIT"
options="!strip !check" options="!check"
#depends='firefly-iii dotnet31-runtime' depends="firefly-iii dotnet6-runtime"
makedepends='dotnet31-sdk' makedepends="dotnet6-sdk"
source="firefly-plaid-connector-$pkgver.tar.gz::https://gitlab.com/GeorgeHahn/firefly-plaid-connector/-/archive/v${pkgver}/firefly-plaid-connector-v${pkgver}.tar.gz" source="firefly-plaid-connector-$pkgver.tar.gz::https://gitlab.com/GeorgeHahn/firefly-plaid-connector/-/archive/v$pkgver/firefly-plaid-connector-v$pkgver.tar.gz net6-support.patch"
builddir="${srcdir}/firefly-plaid-connector-v${pkgver}" builddir="$srcdir/firefly-plaid-connector-v$pkgver"
build(){ build() {
cd "${builddir}" dotnet publish --configuration Release --output ./publish --use-current-runtime --no-self-contained
# Disable dotnet telemetry
export DOTNET_CLI_TELEMETRY_OPTOUT=1
# publish app and libraries
dotnet publish --configuration Release --output "$PWD"/publish
} }
package() { package() {
mkdir -p "${pkgdir}"/var/lib mkdir -p "$pkgdir"/usr/lib
cp -r "${builddir}"/publish "$pkgdir"/var/lib/firefly-plaid-connector cp -r "$builddir"/publish "$pkgdir"/usr/lib/firefly-plaid-connector
} }
sha512sums="57a64673bf2e8cae00cb215e1dc90eb02bddf50010835a9318f55f83313c00f19d6c8d8af65e2739b0fb6fd4522a2327941bdc7d11cbe59c9537ff6c1575765e firefly-plaid-connector-0.3.1.tar.gz"
sha512sums="
57a64673bf2e8cae00cb215e1dc90eb02bddf50010835a9318f55f83313c00f19d6c8d8af65e2739b0fb6fd4522a2327941bdc7d11cbe59c9537ff6c1575765e firefly-plaid-connector-0.3.1.tar.gz
f795fe58659763082e3f2bba0e6e2a70c4732bc6b402a4e586104bf09525ffca1d3586acda43ccba3b71d15e1a0a62794574f72a2fc6cd3d1905dcb2e8782dc2 net6-support.patch
"

View file

@ -1,8 +1,8 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net> # Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=authentik pkgname=authentik
pkgver=2024.4.2 pkgver=2024.4.3
pkgrel=0 pkgrel=1
pkgdesc="An open-source Identity Provider focused on flexibility and versatility" pkgdesc="An open-source Identity Provider focused on flexibility and versatility"
url="https://github.com/goauthentik/authentik" url="https://github.com/goauthentik/authentik"
# s390x: missing py3-celery py3-flower and py3-kombu # s390x: missing py3-celery py3-flower and py3-kombu
@ -60,8 +60,10 @@ depends="
py3-django-otp py3-django-otp
py3-django-prometheus py3-django-prometheus
py3-django-redis py3-django-redis
py3-django-rest-framework py3-django-rest-framework~=3.14.0
py3-django-rest-framework-guardian py3-django-rest-framework-guardian
py3-django-storages
py3-django-tenants
py3-docker-py py3-docker-py
py3-dotenv py3-dotenv
py3-dumb-init py3-dumb-init
@ -69,6 +71,7 @@ depends="
py3-drf-spectacular py3-drf-spectacular
py3-email-validator py3-email-validator
py3-facebook-sdk py3-facebook-sdk
py3-fido2
py3-flower py3-flower
py3-frozenlist py3-frozenlist
py3-geoip2 py3-geoip2
@ -101,7 +104,6 @@ depends="
py3-prompt_toolkit py3-prompt_toolkit
py3-psycopg py3-psycopg
py3-psycopg-c py3-psycopg-c
py3-pycryptodome
py3-pydantic-scim py3-pydantic-scim
py3-pynacl py3-pynacl
py3-pyrsistent py3-pyrsistent
@ -110,6 +112,8 @@ depends="
py3-requests py3-requests
py3-requests-oauthlib py3-requests-oauthlib
py3-rsa py3-rsa
py3-scim2-filter-parser
py3-setproctitle
py3-sentry-sdk py3-sentry-sdk
py3-service_identity py3-service_identity
py3-setuptools py3-setuptools
@ -122,6 +126,7 @@ depends="
py3-twilio py3-twilio
py3-twisted py3-twisted
py3-txaio py3-txaio
py3-tenant-schemas-celery
py3-typing-extensions py3-typing-extensions
py3-tz py3-tz
py3-ua-parser py3-ua-parser
@ -158,6 +163,7 @@ source="
authentik-ldap.openrc authentik-ldap.openrc
authentik-ldap.conf authentik-ldap.conf
authentik-manage.sh authentik-manage.sh
fix-ak-bash.patch
root-settings-csrf_trusted_origins.patch root-settings-csrf_trusted_origins.patch
" "
builddir="$srcdir/"authentik-version-$pkgver builddir="$srcdir/"authentik-version-$pkgver
@ -225,6 +231,11 @@ package() {
install -Dm640 "$builddir"/authentik/lib/default.yml \ install -Dm640 "$builddir"/authentik/lib/default.yml \
"$pkgdir"/etc/authentik/config.yml "$pkgdir"/etc/authentik/config.yml
chown root:www-data "$pkgdir"/etc/authentik/config.yml chown root:www-data "$pkgdir"/etc/authentik/config.yml
mv "$pkgdir"/usr/share/webapps/authentik/web/dist/custom.css "$pkgdir"/etc/authentik/custom.css
ln -s "/etc/authentik/custom.css" "$pkgdir"/usr/share/webapps/authentik/web/dist/custom.css
chown root:www-data "$pkgdir"/etc/authentik/custom.css
sed -i 's|cert_discovery_dir.*|cert_discovery_dir: /var/lib/authentik/certs|' "$pkgdir"/etc/authentik/config.yml sed -i 's|cert_discovery_dir.*|cert_discovery_dir: /var/lib/authentik/certs|' "$pkgdir"/etc/authentik/config.yml
sed -i 's|blueprints_dir.*|blueprints_dir: /var/lib/authentik/blueprints|' "$pkgdir"/etc/authentik/config.yml sed -i 's|blueprints_dir.*|blueprints_dir: /var/lib/authentik/blueprints|' "$pkgdir"/etc/authentik/config.yml
sed -i 's|template_dir.*|template_dir: /var/lib/authentik/templates|' "$pkgdir"/etc/authentik/config.yml sed -i 's|template_dir.*|template_dir: /var/lib/authentik/templates|' "$pkgdir"/etc/authentik/config.yml
@ -236,11 +247,12 @@ package() {
} }
sha512sums=" sha512sums="
58642829e320b1480706363712a73c82e55f79ed6451d5db82482c51b9c1ee13b9999caf152da0944ca277344d38c99a5636a7e9e718f858ca558f17ae9da104 authentik-2024.4.2.tar.gz 121ed925d81a5cb2a14fed8ec8b324352e40b1fcbba83573bfdc1d1f66a91d9670cd64d7ef752c8a2df6c34fc3e19e8aec5c6752d33e87b487a462a590212ab0 authentik-2024.4.3.tar.gz
4defb4fe3a4230f4aa517fbecd5e5b8bcef2a64e1b40615660ae9eec33597310a09df5e126f4d39ce7764bd1716c0a7040637699135c103cbc1879593c6c06f1 authentik.openrc 4defb4fe3a4230f4aa517fbecd5e5b8bcef2a64e1b40615660ae9eec33597310a09df5e126f4d39ce7764bd1716c0a7040637699135c103cbc1879593c6c06f1 authentik.openrc
5d7f28bf5a9f358a0fc3634b2bac6d070c276c3f8181d26fa7e94a17503a4d54556bf7c3207ccd6cb924b81754ed965795d5e2a8aa1af409fd9e32d390ec4cf5 authentik-worker.openrc 6cb03b9b69df39bb4539fe05c966536314d766b2e9307a92d87070ba5f5b7e7ab70f1b5ee1ab3c0c50c23454f9c5a4caec29e63fdf411bbb7a124ad687569b89 authentik-worker.openrc
351e6920d987861f8bf0d7ab2f942db716a8dbdad1f690ac662a6ef29ac0fd46cf817cf557de08f1c024703503d36bc8b46f0d9eb1ecaeb399dce4c3bb527d17 authentik-ldap.openrc 351e6920d987861f8bf0d7ab2f942db716a8dbdad1f690ac662a6ef29ac0fd46cf817cf557de08f1c024703503d36bc8b46f0d9eb1ecaeb399dce4c3bb527d17 authentik-ldap.openrc
89ee5f0ffdade1c153f3a56ff75b25a7104aa81d8c7a97802a8f4b0eab34850cee39f874dabe0f3c6da3f71d6a0f938f5e8904169e8cdd34d407c8984adee6b0 authentik-ldap.conf 89ee5f0ffdade1c153f3a56ff75b25a7104aa81d8c7a97802a8f4b0eab34850cee39f874dabe0f3c6da3f71d6a0f938f5e8904169e8cdd34d407c8984adee6b0 authentik-ldap.conf
d2df285e09d05bb78b17cdbf156cb19883764d0ae61d4c8faed599c015277b75c3f51e5fcb35e01fc25d5847f667ff2089d5e6c48b85a3a6b4523278b2eea89d authentik-manage.sh f1a3cb215b6210fa7d857a452a9f2bc4dc0520e49b9fa7027547cff093d740a7e2548f1bf1f8831f7d5ccb80c8e523ee0c8bafcc4dc42d2788725f2137d21bee authentik-manage.sh
a50ceddb239851d869212cd5064df117ab977d0e01bf0bc5fa7b5fa6e6428a4af59f802ca223a7e840753f86bfdb0df17d330f9ba4cbaa30a167f51d8aecb9bd root-settings-csrf_trusted_origins.patch 3e47db684a3f353dcecdb7bab8836b9d5198766735d77f676a51d952141a0cf9903fcb92e6306c48d2522d7a1f3028b37247fdc1dc74d4d6e043da7eb4f36d49 fix-ak-bash.patch
5c60e54b6a7829d611af66f5cb8184a002b5ae927efbd024c054a7c176fcb9efcfbe5685279ffcf0390b0f0abb3bb03e02782c6867c2b38d1ad2d508aae83fa0 root-settings-csrf_trusted_origins.patch
" "

View file

@ -1,4 +1,3 @@
#!/bin/sh #!/bin/sh
BUNDLE_DIR='/usr/share/webapps/authentik' BUNDLE_DIR='/usr/share/webapps/authentik'

View file

@ -4,8 +4,8 @@ name="$RC_SVCNAME"
cfgfile="/etc/conf.d/$RC_SVCNAME.conf" cfgfile="/etc/conf.d/$RC_SVCNAME.conf"
pidfile="/run/$RC_SVCNAME.pid" pidfile="/run/$RC_SVCNAME.pid"
working_directory="/usr/share/webapps/authentik" working_directory="/usr/share/webapps/authentik"
command="celery" command="/usr/bin/authentik-manage"
command_args="-A authentik.root.celery worker -Ofair --max-tasks-per-child=1 --autoscale 3,1 -E -B -s /tmp/celerybeat-schedule -Q authentik,authentik_scheduled,authentik_events" command_args="worker"
command_user="authentik" command_user="authentik"
command_group="authentik" command_group="authentik"
start_stop_daemon_args="" start_stop_daemon_args=""

View file

@ -0,0 +1,10 @@
diff --git a/lifecycle/ak.orig b/lifecycle/ak
index 615bfe9..1646274 100755
--- a/lifecycle/ak.orig
+++ b/lifecycle/ak
@@ -1,4 +1,4 @@
-#!/usr/bin/env -S bash -e
+#!/usr/bin/env bash
MODE_FILE="${TMPDIR}/authentik-mode"
function log {

View file

@ -1,8 +1,8 @@
diff --git a/authentik/root/settings.py.orig b/authentik/root/settings.py diff --git a/authentik/root/settings.py b/authentik/root/settings.py
index ebfc471..ce1ef3b 100644 index 15e689b06..8b0c1d744 100644
--- a/authentik/root/settings.py.orig --- a/authentik/root/settings.py
+++ b/authentik/root/settings.py +++ b/authentik/root/settings.py
@@ -56,6 +56,7 @@ AUTH_USER_MODEL = "authentik_core.User" @@ -33,6 +33,7 @@ AUTH_USER_MODEL = "authentik_core.User"
CSRF_COOKIE_NAME = "authentik_csrf" CSRF_COOKIE_NAME = "authentik_csrf"
CSRF_HEADER_NAME = "HTTP_X_AUTHENTIK_CSRF" CSRF_HEADER_NAME = "HTTP_X_AUTHENTIK_CSRF"

View file

@ -1,29 +0,0 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=firefly-iii-plaid-connector
pkgver=0.3.1
pkgrel=7
pkgdesc="The Free Software Media System"
#arch="x86_64"
url="https://gitlab.com/GeorgeHahn/firefly-plaid-connector"
license="MIT"
options="!check"
depends="firefly-iii dotnet6-runtime"
makedepends="dotnet6-sdk"
source="firefly-plaid-connector-$pkgver.tar.gz::https://gitlab.com/GeorgeHahn/firefly-plaid-connector/-/archive/v$pkgver/firefly-plaid-connector-v$pkgver.tar.gz net6-support.patch"
builddir="$srcdir/firefly-plaid-connector-v$pkgver"
build() {
dotnet publish --configuration Release --output ./publish --use-current-runtime --no-self-contained
}
package() {
mkdir -p "$pkgdir"/usr/lib
cp -r "$builddir"/publish "$pkgdir"/usr/lib/firefly-plaid-connector
}
sha512sums="
57a64673bf2e8cae00cb215e1dc90eb02bddf50010835a9318f55f83313c00f19d6c8d8af65e2739b0fb6fd4522a2327941bdc7d11cbe59c9537ff6c1575765e firefly-plaid-connector-0.3.1.tar.gz
f795fe58659763082e3f2bba0e6e2a70c4732bc6b402a4e586104bf09525ffca1d3586acda43ccba3b71d15e1a0a62794574f72a2fc6cd3d1905dcb2e8782dc2 net6-support.patch
"

View file

@ -5,11 +5,11 @@ pkgname=firefly-iii
pkgver=5.7.18 pkgver=5.7.18
pkgrel=0 pkgrel=0
pkgdesc="PHP personal finances manager" pkgdesc="PHP personal finances manager"
#arch="noarch" arch="noarch"
url="https://github.com/firefly-iii/firefly-iii" url="https://github.com/firefly-iii/firefly-iii"
license="AGPL-3.0-only" license="AGPL-3.0-only"
options="!check" # No testsuite options="!check" # No testsuite
_php=php82 _php=php83
_php_mods="-intl -curl -bcmath -zip -gd -xml -mbstring -ldap -session -fileinfo -simplexml -sodium -tokenizer -xmlwriter -dom -pdo" _php_mods="-intl -curl -bcmath -zip -gd -xml -mbstring -ldap -session -fileinfo -simplexml -sodium -tokenizer -xmlwriter -dom -pdo"
depends="$_php ${_php_mods//-/$_php-}" depends="$_php ${_php_mods//-/$_php-}"
makedepends="composer" makedepends="composer"

View file

@ -0,0 +1,112 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Contributor: 6543 <6543@obermui.de>
# Contributor: techknowlogick <techknowlogick@gitea.io>
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=forgejo-aneksajo
pkgver=8.0.0
_gittag=v$pkgver-git-annex0
pkgrel=0
pkgdesc="Self-hosted Git service written in Go with git-annex support"
url="https://forgejo.org"
# riscv64: builds fail https://codeberg.org/forgejo/forgejo/issues/3025
arch="all !riscv64"
license="MIT"
depends="git git-lfs gnupg"
makedepends="go nodejs npm"
checkdepends="bash openssh openssh-keygen sqlite tzdata"
install="$pkgname.pre-install"
pkgusers="forgejo"
pkggroups="www-data"
subpackages="$pkgname-openrc"
source="$pkgname-$_gittag.tar.gz::https://codeberg.org/matrss/forgejo-aneksajo/archive/$_gittag.tar.gz
$pkgname.initd
$pkgname.ini
"
builddir="$srcdir/forgejo-aneksajo"
options="!check net chmod-clean" # broken with GIT_CEILING
# secfixes:
# 7.0.4-r0:
# - CVE-2024-24789
# 7.0.3-r0:
# - CVE-2024-24788
# 1.21.10.0-r0:
# - CVE-2023-45288
# 1.21.3.0-r0:
# - CVE-2023-48795
export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
# Skip tests for archs that fail unrelated in CI
case "$CARCH" in
s390x|x86|armhf|armv7) options="$options !check" ;;
esac
prepare() {
default_prepare
npm ci
}
build() {
# XXX: LARGEFILE64
export CGO_CFLAGS="$CFLAGS -O2 -D_LARGEFILE64_SOURCE"
export TAGS="bindata sqlite sqlite_unlock_notify"
export GITEA_VERSION="$pkgver"
export EXTRA_GOFLAGS="$GOFLAGS"
export CGO_LDFLAGS="$LDFLAGS"
unset LDFLAGS
## make FHS compliant
local setting="code.gitea.io/gitea/modules/setting"
export LDFLAGS="$LDFLAGS -X $setting.CustomConf=/etc/forgejo/app.ini"
export LDFLAGS="$LDFLAGS -X $setting.AppWorkPath=/var/lib/forgejo/"
make -j1 build
}
check() {
local home="$srcdir"/home
mkdir -p "$home"
install -d -m700 "$home"/.ssh
touch "$home"/.gitconfig
env GITEA_ROOT="$home" HOME="$home" GITEA_WORK_DIR="$(pwd)" timeout -s ABRT 20m make -j1 test-sqlite
## "make test" - modified (exclude broken tests)
## 'code.gitea.io/gitea/modules/migrations': github hase rate limits! 403 API
local tests=$(go list ./... | grep -v /vendor/ |
grep -v 'code.gitea.io/gitea/modules/migrations' |
grep -v 'code.gitea.io/gitea/modules/charset' |
grep -v 'code.gitea.io/gitea/models/migrations' |
grep -v 'code.gitea.io/gitea/services/migrations' |
grep -v 'code.gitea.io/gitea/integrations')
env GITEA_CONF="$PWD/tests/sqlite.ini" GITEA_ROOT="$home" HOME="$home" GO111MODULE=on go test -mod=vendor -tags='sqlite sqlite_unlock_notify' $tests
}
package() {
for dir in $pkgname $pkgname/git $pkgname/data $pkgname/db $pkgname/custom; do
install -dm750 -o forgejo -g www-data \
"$pkgdir"/var/lib/$dir
done
install -dm755 -o forgejo -g www-data "$pkgdir"/var/log/forgejo
# TODO: rename when upstream does
install -Dm755 -g www-data gitea "$pkgdir"/usr/bin/forgejo
install -Dm644 -o forgejo -g www-data "$srcdir"/forgejo-aneksajo.ini \
"$pkgdir"/etc/forgejo/app.ini
chown forgejo:www-data "$pkgdir"/etc/forgejo
install -Dm755 "$srcdir"/forgejo-aneksajo.initd \
"$pkgdir"/etc/init.d/forgejo
}
sha512sums="
6836da3996a4bc51c88d82afcffbcd30965111a41d2cdf91d9539b0f0a4832496ed071b52e6eedf2eeaec7623a32aec3a3fdd1dedefedf5c2323690bd1f60937 forgejo-aneksajo-v8.0.0-git-annex0.tar.gz
eb93a9f6c8f204de5c813f58727015f53f9feaab546589e016c60743131559f04fc1518f487b6d2a0e7fa8fab6d4a67cd0cd9713a7ccd9dec767a8c1ddebe129 forgejo-aneksajo.initd
b537b41b6b3a945274a6028800f39787b48c318425a37cf5d40ace0d1b305444fd07f17b4acafcd31a629bedd7d008b0bb3e30f82ffeb3d7e7e947bdbe0ff4f3 forgejo-aneksajo.ini
"

View file

@ -0,0 +1,26 @@
# Configuration cheat sheet: https://forgejo.org/docs/latest/admin/config-cheat-sheet/
RUN_USER = forgejo
RUN_MODE = prod
[repository]
ROOT = /var/lib/forgejo/git
SCRIPT_TYPE = sh
[server]
STATIC_ROOT_PATH = /usr/share/webapps/forgejo
APP_DATA_PATH = /var/lib/forgejo/data
LFS_START_SERVER = true
[database]
DB_TYPE = sqlite3
PATH = /var/lib/forgejo/db/forgejo.db
SSL_MODE = disable
[session]
PROVIDER = file
[log]
ROOT_PATH = /var/log/forgejo
MODE = file
LEVEL = Info

View file

@ -0,0 +1,15 @@
#!/sbin/openrc-run
supervisor=supervise-daemon
name=forgejo
command="/usr/bin/forgejo"
command_user="${FORGEJO_USER:-forgejo}:www-data"
command_args="web --config '${FORGEJO_CONF:-/etc/forgejo/app.ini}'"
supervise_daemon_args="--env FORGEJO_WORK_DIR='${FORGEJO_WORK_DIR:-/var/lib/forgejo}' --chdir '${FORGEJO_WORK_DIR:-/var/lib/forgejo}' --stdout '${FORGEJO_LOG_FILE:-/var/log/forgejo/http.log}' --stderr '${FORGEJO_LOG_FILE:-/var/log/forgejo/http.log}'"
pidfile="/run/forgejo.pid"
depend() {
use logger dns
need net
after firewall mysql postgresql
}

View file

@ -0,0 +1,7 @@
#!/bin/sh
addgroup -S -g 82 www-data 2>/dev/null
adduser -S -D -h /var/lib/forgejo -s /bin/sh -G www-data -g forgejo forgejo 2>/dev/null \
&& passwd -u forgejo 2>/dev/null
exit 0

View file

@ -2,7 +2,7 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Jakub Jirutka <jakub@jirutka.cz> # Contributor: Jakub Jirutka <jakub@jirutka.cz>
pkgname=gitaly pkgname=gitaly
pkgver=16.9.3 pkgver=17.0.4
pkgrel=0 pkgrel=0
pkgdesc="A Git RPC service for handling all the git calls made by GitLab" pkgdesc="A Git RPC service for handling all the git calls made by GitLab"
url="https://gitlab.com/gitlab-org/gitaly/" url="https://gitlab.com/gitlab-org/gitaly/"
@ -80,7 +80,7 @@ praefect() {
} }
sha512sums=" sha512sums="
c3784b7fb692d2e57a484b3a33b719de76d3ee8bfabc95919e7dabd89f5429f06000c615e433c99f18c1a6706ecd389dcf15d55a59ed546f62c10b585e20ad7b gitaly-v16.9.3.tar.gz 2d06498c519c20804dd592cac3214cf8124ece1dda0d15342f8ccc6d9c9d2715dad24f9940e4d87b824320483c9882004bcef3747a8de347c1d48ec983a9f5cb gitaly-v17.0.4.tar.gz
7685330e637c3a34db941c9e6b8776d0611ec16297e8be998a3eb4716c455d9f015d433a4d27720c24e520d489dd56bdab7c0e4264f2852b4b0bfd6ecaa7f773 config.patch 7685330e637c3a34db941c9e6b8776d0611ec16297e8be998a3eb4716c455d9f015d433a4d27720c24e520d489dd56bdab7c0e4264f2852b4b0bfd6ecaa7f773 config.patch
c32105d921be16eaf559cf21d6840bc346cd92b5e37974cedecdb5a2d2ca1eb5e8fbb144f5fc8a1289bf9415102b313cf2d61ee510c80f08ab33a799f5ac7122 gitaly.initd c32105d921be16eaf559cf21d6840bc346cd92b5e37974cedecdb5a2d2ca1eb5e8fbb144f5fc8a1289bf9415102b313cf2d61ee510c80f08ab33a799f5ac7122 gitaly.initd
" "

View file

@ -3,12 +3,12 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=gitlab-foss pkgname=gitlab-foss
_pkgname=${pkgname%-foss} _pkgname=${pkgname%-foss}
pkgver=16.9.3 pkgver=17.0.4
_gittag=v$pkgver _gittag=v$pkgver
pkgrel=0 pkgrel=0
pkgdesc="A version control for your server" pkgdesc="A version control for your server"
url="https://gitlab.com/gitlab-org/gitlab-foss" url="https://gitlab.com/gitlab-org/gitlab-foss"
#arch="x86_64 aarch64" arch="x86_64 aarch64"
license="MIT" license="MIT"
# ruby-irb is needed only for Rails console (gitlab-rails console) # ruby-irb is needed only for Rails console (gitlab-rails console)
depends=" depends="
@ -17,8 +17,8 @@ depends="
cmd:dpkg-deb cmd:dpkg-deb
exiftool exiftool
git>=2.42.0 git>=2.42.0
gitaly~=16.9 gitaly~=17.0
gitlab-shell~=14.34 gitlab-shell>=14.35
graphicsmagick graphicsmagick
http-parser http-parser
procps procps
@ -59,8 +59,6 @@ makedepends="
protobuf-dev protobuf-dev
re2-dev re2-dev
ruby3.2-dev ruby3.2-dev
ruby3.2-grpc~=1.58
ruby3.2-rugged
rust rust
yarn>=1.2.0 yarn>=1.2.0
" "
@ -78,7 +76,7 @@ source="https://gitlab.com/gitlab-org/gitlab-foss/-/archive/$_gittag/gitlab-foss
$_pkgname.confd $_pkgname.confd
$_pkgname.logrotate $_pkgname.logrotate
bin-wrapper.in bin-wrapper.in
downgrade-sys-filesystem-depend.patch upgrade-sys-filesystem-depend.patch
" "
builddir="$srcdir/gitlab-foss-$_gittag" builddir="$srcdir/gitlab-foss-$_gittag"
@ -91,8 +89,6 @@ export BUNDLE_FROZEN=true
export BUNDLE_JOBS=1 export BUNDLE_JOBS=1
prepare() { prepare() {
local sysgemdir=$(ruby -e 'puts Gem.default_dir')
default_prepare default_prepare
# The default log level is very chatty. # The default log level is very chatty.
@ -108,17 +104,6 @@ prepare() {
# Allow use of any bundler # Allow use of any bundler
sed -i -e '/BUNDLED/,+1d' Gemfile.lock 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() { build() {
@ -154,9 +139,6 @@ build() {
# Remove faulty RPATH. # Remove faulty RPATH.
chrpath -d vendor/bundle/ruby/*/extensions/*/*/ruby-magic-*/magic/magic.so 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. # Patch installed gem gitlab-markup to use python3.
# Option "-S" causes that Python cannot find docutils module. # Option "-S" causes that Python cannot find docutils module.
sed -i 's/python2 -S/python3/g' \ sed -i 's/python2 -S/python3/g' \
@ -239,10 +221,7 @@ package() {
"$datadir"/packages \ "$datadir"/packages \
"$datadir"/pages \ "$datadir"/pages \
"$datadir"/terraform_state \ "$datadir"/terraform_state \
"$datadir"/uploads \ "$datadir"/uploads
"$pkgdir"/var/tmp/gitlab \
"$pkgdir"/var/tmp/gitlab/downloads \
"$pkgdir"/var/tmp/gitlab/backups
install -d -m0750 -o git -g www-data \ install -d -m0750 -o git -g www-data \
"$datadir"/pages "$datadir"/pages
@ -382,15 +361,15 @@ assets() {
} }
sha512sums=" sha512sums="
d17ff841977d157965337774ac8ebed409e058bb1617d3fadeb8330d46efe32a091483ba30955c883e654b138d9a3ae7740a528418cd30eb1ed18cced508ddb8 gitlab-foss-v16.9.3.tar.gz e09cfbbe4237f42bd8509c551031fd3526b75762beae7dac5164ecc4056ae07890a3ddb8500f1573f0ca9d697150654d1fcab3b3d0a3b93e5382addcee298c5b gitlab-foss-v17.0.4.tar.gz
daa496f3d9146f9dbddff62477bf49d5c7bd2f2a4cdbadc70ee51c8230f3ef01dc950ef157154b31c7e7bef0beecc5cbac50fbac65a79d6d9099b27bcba8b2ab database-config.patch daa496f3d9146f9dbddff62477bf49d5c7bd2f2a4cdbadc70ee51c8230f3ef01dc950ef157154b31c7e7bef0beecc5cbac50fbac65a79d6d9099b27bcba8b2ab database-config.patch
55b0667d3969113ffd6860652ee8bdb9a534c25f413f33b2739e922c886988e7cea72c1c00c7eecf29fcff3682b1324156365605ffc6aae45d1e0ccddf96288b gitlab.initd 80d9bf2d064c1d4310566e087e14220e075430c46d9a6c4641c1141fbdc05381ae14a3ae7dfcb7dcb75dbf7af17a136f81764c7a4d109f248a81033782dce23b gitlab.initd
1f451b67a5d5e58650b0fe862a2b65cfb8bff5502b37d94ae90619c1ff9affbecf24428303a2849bebce5f94bef37078f0e5710e344bbab616134e910938384a gitlab.mailroom.initd 1f451b67a5d5e58650b0fe862a2b65cfb8bff5502b37d94ae90619c1ff9affbecf24428303a2849bebce5f94bef37078f0e5710e344bbab616134e910938384a gitlab.mailroom.initd
b6a6d9ba20557e61efa24f2d5a489873fefbb981f7d4465794a857b2971263c08ec29cc001c372522cdc0d48245e59751307c9f44f6ef4d87bf2e3ec5c23fb1c gitlab.rails.initd d8cdeb54c46f8204936bf5750833649e4586d3dd1942eed45955ed1661ae5f5080f59184fcb59a8f73c1405faccbf02b3db3d2c12fc2a4a81424cd35ce390768 gitlab.rails.initd
cb4ec100f0ea7ffcbb37aead8423e636629e2f4848b2974a7b2468e96cb1081ca732ac336417b08dd943afb961df888c73af1334dcbe054dfd361e74f492fd86 gitlab.sidekiq.initd cb4ec100f0ea7ffcbb37aead8423e636629e2f4848b2974a7b2468e96cb1081ca732ac336417b08dd943afb961df888c73af1334dcbe054dfd361e74f492fd86 gitlab.sidekiq.initd
85c4e257a030832bd70ad1e257ae7cb568b31e01201fc845abac02d00f02492ca694be1fa2bf743dd8c8623e6a79d36adee3f4de02040134c11158a6001c064b gitlab.workhorse.initd 85c4e257a030832bd70ad1e257ae7cb568b31e01201fc845abac02d00f02492ca694be1fa2bf743dd8c8623e6a79d36adee3f4de02040134c11158a6001c064b gitlab.workhorse.initd
4dc00b16462f30591297fcb535fc364185d3ed76e9956597f0423a8dfd8a9a351f6ac29d9f0c73052c11324fba4768eb89a21c6bef4da99f15baaea8c9ab8407 gitlab.confd 4dc00b16462f30591297fcb535fc364185d3ed76e9956597f0423a8dfd8a9a351f6ac29d9f0c73052c11324fba4768eb89a21c6bef4da99f15baaea8c9ab8407 gitlab.confd
57f258246925fbef0780caebdf005983c72fe3db1ab3242a1e00137bd322f5ec6c0fd958db7178b8fc22103d071f550d6f71f08422bcd9e859d2a734b2ecef00 gitlab.logrotate 57f258246925fbef0780caebdf005983c72fe3db1ab3242a1e00137bd322f5ec6c0fd958db7178b8fc22103d071f550d6f71f08422bcd9e859d2a734b2ecef00 gitlab.logrotate
a944c3886388ba1574bf8c96b6de4d9f24ef4a83f553c31a224e17a3b01f2a5c65b60c59b7ed7ca4b25670c60ea8dd41b96a8a623d909d2bb09bdf2520ed7f23 bin-wrapper.in a944c3886388ba1574bf8c96b6de4d9f24ef4a83f553c31a224e17a3b01f2a5c65b60c59b7ed7ca4b25670c60ea8dd41b96a8a623d909d2bb09bdf2520ed7f23 bin-wrapper.in
ab9a09fca6126b18b76e61380990dc217f915162985880e90b905b3210a1fef229af3db1f1ca180177d3cba91ab5fe33798ac685055abf0adc44a1b630f71b39 downgrade-sys-filesystem-depend.patch 0eaa7de9a906ddb0fe84b7afbaec893a134bbbdb9e71da75cf4095ef40404643e51447aee88d3cad6e565bc709b34ffd8901cc93061e4a2a410838aed42d3644 upgrade-sys-filesystem-depend.patch
" "

View file

@ -15,6 +15,7 @@ if yesno "$pages_enabled" && [ -e /etc/init.d/gitlab.pages ]; then
fi fi
depend() { depend() {
need redis postgresql
use net use net
} }

View file

@ -77,6 +77,11 @@ start_pre() {
if [ -n "$downloads_path" ]; then if [ -n "$downloads_path" ]; then
checkpath -d -m 700 -o $command_user -q "$downloads_path" checkpath -d -m 700 -o $command_user -q "$downloads_path"
fi fi
checkpath --directory --owner $command_user --mode 0775 \
/var/tmp/gitlab/downloads \
/var/tmp/gitlab/backups
} }
reload() { reload() {

View file

@ -7,31 +7,29 @@ index c1e9e34..a4448b7 100644
# System information # System information
gem 'vmstat', '~> 2.3.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'vmstat', '~> 2.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
-gem 'sys-filesystem', '~> 1.4.3' # 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 # NTP client
gem 'net-ntp' # rubocop:todo Gemfile/MissingFeatureCategory gem 'net-ntp' # rubocop:todo Gemfile/MissingFeatureCategory
diff --git a/Gemfile.lock.orig b/Gemfile.lock diff --git a/Gemfile.lock.orig b/Gemfile.lock
index e2ebb91..39b6df3 100644 index bb66169..a4da10b 100644
--- a/Gemfile.lock.orig --- a/Gemfile.lock.orig
+++ b/Gemfile.lock +++ b/Gemfile.lock
@@ -1605,8 +1605,8 @@ GEM @@ -1657,7 +1657,7 @@ GEM
attr_required (>= 0.0.5) attr_required (>= 0.0.5)
httpclient (>= 2.4) httpclient (>= 2.4)
sync (0.5.0) sync (0.5.0)
- sys-filesystem (1.4.3) - sys-filesystem (1.4.3)
- ffi (~> 1.1) + sys-filesystem (1.4.5)
+ sys-filesystem (1.3.2) ffi (~> 1.1)
+ ffi (>= 0)
sysexits (1.2.0) sysexits (1.2.0)
table_print (1.5.7) table_print (1.5.7)
tanuki_emoji (0.9.0) @@ -2123,7 +2123,7 @@ DEPENDENCIES
@@ -2061,7 +2059,7 @@ DEPENDENCIES
ssh_data (~> 1.3)
stackprof (~> 0.2.25) stackprof (~> 0.2.25)
state_machines-activerecord (~> 0.8.0) state_machines-activerecord (~> 0.8.0)
static_holmes (~> 0.7.7)
- sys-filesystem (~> 1.4.3) - sys-filesystem (~> 1.4.3)
+ sys-filesystem (= 1.3.2) + sys-filesystem (~> 1.4.5)
tanuki_emoji (~> 0.9) tanuki_emoji (~> 0.9)
telesignenterprise (~> 2.2) telesignenterprise (~> 2.2)
terser (= 1.0.2) terser (= 1.0.2)

View file

@ -2,7 +2,7 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Jakub Jirutka <jakub@jirutka.cz> # Contributor: Jakub Jirutka <jakub@jirutka.cz>
pkgname=gitlab-pages pkgname=gitlab-pages
pkgver=16.9.3 pkgver=17.0.4
_gittag="v$pkgver" _gittag="v$pkgver"
pkgrel=0 pkgrel=0
pkgdesc="A daemon used to serve static websites for GitLab users" pkgdesc="A daemon used to serve static websites for GitLab users"
@ -29,7 +29,7 @@ package() {
} }
sha512sums=" sha512sums="
5a97176d820f787b96cac54dc040a0232c6b0e8a98f7e737af2f5c9a0cff10ce79263a35fdf560c58eb84eaaf1ed109a75121b050f059b4bdf493d05b58861bc gitlab-pages-v16.9.3.tar.gz fde33d01f7b3810a9a094c09fce19976c41a2ccc9eaf720a0f4dd285eb2d0f35de8d2d607cdbaa670221711919043d681fd3fda6e14d67ae1454619746c1e453 gitlab-pages-v17.0.4.tar.gz
710a9b652327e57e620c2bdb02bf912a6f61044eaaf61d36c6612284e9b951d2ac6f5eef77dfea16a0cde328bd4c556d9e47791c560139c27cb9659076f809b1 ungit-makefile.patch 710a9b652327e57e620c2bdb02bf912a6f61044eaaf61d36c6612284e9b951d2ac6f5eef77dfea16a0cde328bd4c556d9e47791c560139c27cb9659076f809b1 ungit-makefile.patch
20bc66c1c3548568ed353ca8d584f9108b9688f9375f212a18efc7b8386fdaafb3b2dc9e865f21c7f8fd31ada6e91842a8bb8d397f64851d853bb0de3e0e60bb gitlab-pages.initd 20bc66c1c3548568ed353ca8d584f9108b9688f9375f212a18efc7b8386fdaafb3b2dc9e865f21c7f8fd31ada6e91842a8bb8d397f64851d853bb0de3e0e60bb gitlab-pages.initd
" "

View file

@ -2,7 +2,7 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Jakub Jirutka <jakub@jirutka.cz> # Contributor: Jakub Jirutka <jakub@jirutka.cz>
pkgname=gitlab-shell pkgname=gitlab-shell
pkgver=14.34.0 pkgver=14.36.0
pkgrel=0 pkgrel=0
pkgdesc="GitLab Shell handles git SSH sessions for GitLab" pkgdesc="GitLab Shell handles git SSH sessions for GitLab"
url="https://gitlab.com/gitlab-org/gitlab-shell" url="https://gitlab.com/gitlab-org/gitlab-shell"
@ -59,8 +59,8 @@ package() {
} }
sha512sums=" sha512sums="
703685c8aae6498ad42103a70a65e18b4d2a617687a5488a52bf4c8147cd56a724a109ea27456ca93a723b458499ab09590ad5d1591eb5d3c38d8d33870736eb gitlab-shell-v14.34.0.tar.gz 6b302be3630e60e3c9f76e58c61674bf08c3fe1395c9af5f354b9a557ecd1ddb43d27c9a995f868c4e4e2e734dd424a37c73e78d26b00f1f6a78f8670b45c371 gitlab-shell-v14.36.0.tar.gz
5123f639de976b83a961f5d0a9f53b0ff7559ceb4e73b25a8029423932ba6249c430b8bb04dae4dce2e13330e95d4a7a88e63376ead2d6369f6adb264fd36d49 config.patch e9dd69c57c65197493f75bdde682075c6ab22892ed07d37c7a73129fb42a8349a676d5986bfd17f1df331645334248383845f21ce08d1e9664c38e4bbf5343ba config.patch
499b3a46ea94a33a23b01f6a7509d74f5a6781b930619b3b8ae42bdeae8a052cc636578744d7992b4ae4f9b9f72b11ee3d3c0f5e50986fa3f7e35b979b08aada change-config-path.patch 499b3a46ea94a33a23b01f6a7509d74f5a6781b930619b3b8ae42bdeae8a052cc636578744d7992b4ae4f9b9f72b11ee3d3c0f5e50986fa3f7e35b979b08aada change-config-path.patch
c53da7f145593693392d9fa880ad5a1909bfc7504fd1c93d94a468c3e0f5cc80f712f41ee1dc8bf38105b410c1165658f208bd88a70c4674104c78af33d8d09c gitconfig c53da7f145593693392d9fa880ad5a1909bfc7504fd1c93d94a468c3e0f5cc80f712f41ee1dc8bf38105b410c1165658f208bd88a70c4674104c78af33d8d09c gitconfig
" "

View file

@ -1,5 +1,5 @@
diff --git a/config.yml.example.orig b/config.yml.example diff --git a/config.yml.example.orig b/config.yml.example
index 13850e6..98eb0e3 100644 index fb147c4..98eb0e3 100644
--- a/config.yml.example.orig --- a/config.yml.example.orig
+++ b/config.yml.example +++ b/config.yml.example
@@ -13,7 +13,7 @@ user: git @@ -13,7 +13,7 @@ user: git
@ -47,7 +47,7 @@ index 13850e6..98eb0e3 100644
# Audit usernames. # Audit usernames.
# Set to true to see real usernames in the logs instead of key ids, which is easier to follow, but # Set to true to see real usernames in the logs instead of key ids, which is easier to follow, but
@@ -62,60 +62,6 @@ audit_usernames: false @@ -62,62 +62,6 @@ audit_usernames: false
# For more details, visit https://docs.gitlab.com/ee/development/distributed_tracing.html # For more details, visit https://docs.gitlab.com/ee/development/distributed_tracing.html
# gitlab_tracing: opentracing://driver # gitlab_tracing: opentracing://driver
@ -87,6 +87,8 @@ index 13850e6..98eb0e3 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] - 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 - # Specified the ciphers allowed
- ciphers: [aes128-gcm@openssh.com, chacha20-poly1305@openssh.com, aes256-gcm@openssh.com, aes128-ctr, aes192-ctr,aes256-ctr] - 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. - # SSH host key files.
- host_key_files: - host_key_files:
- - /run/secrets/ssh-hostkeys/ssh_host_rsa_key - - /run/secrets/ssh-hostkeys/ssh_host_rsa_key

View file

@ -2,11 +2,11 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net> # Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=mastodon pkgname=mastodon
_pkgname=$pkgname _pkgname=$pkgname
pkgver=4.2.8 pkgver=4.2.10
_gittag=v$pkgver _gittag=v$pkgver
pkgrel=1 pkgrel=1
pkgdesc="Self-hosted social media and network server based on ActivityPub and OStatus" pkgdesc="Self-hosted social media and network server based on ActivityPub and OStatus"
#arch="x86_64" arch="x86_64"
url="https://github.com/mastodon/mastodon" url="https://github.com/mastodon/mastodon"
license="AGPL-3.0-only" license="AGPL-3.0-only"
depends=" depends="
@ -192,11 +192,11 @@ assets() {
} }
sha512sums=" sha512sums="
c48a04df9c59518f7325b8119bf943436e29ccbfaecff3f7b96162e77fa2012df3f5d4e92e209e233ca7c4646205f5e34bf5f7d22b973115b8e16b3b5ada1fb0 mastodon-v4.2.8.tar.gz 1fe5417136bc020a83b83eaccef7f1f46c13fc8318681f12ba556b1b6b03e25ef7b6335c28f4e6722101e97b63020cbd0d3fbacdaf9b3b5a4b73c3cf3e230813 mastodon-v4.2.10.tar.gz
36604cd630f0f5b4d88b630b1512cd26e922f859e5d19cbb85106ff29fc9048d2349f926d5c4b6947c655f67e60ec33e2f524a8154405a4369f283e00be7cdce mastodon.initd d49fea9451c97ccefe5e35b68e4274aeb427f9d1e910b89c1f6c810489c3bec1ccff72952fdaef95abf944b8aff0da84a52347540d36ff1fba5ccc19e1d935c6 mastodon.initd
9e77061fbdebe90492398f8089a7d2612ff4b6e70b5462dd67330b66d9788cb0133eab38c372b1f27a7214aacdd9f7f70381d4ecc6e92c8c38d794404ae0f840 mastodon.web.initd eefe12a31268245f802222c0001dac884e03adb0d301e53a1512a3cd204836ca03ad083908cd14d146cf0dce99e3a4366570efd0e40a9a490ccd381d4c63c32f mastodon.web.initd
6dacafca86dd39f6a6efa773cfe35b4632098175605a7c64488027237b01028d9785e50a3a0532b88ebf8f857c9a594c7b68f9e577b46e95104e7cffde51ccf8 mastodon.sidekiq.initd 8fc9249c01693bb02b8d1a6177288d5d3549addde8c03eb35cc7a32dde669171872ebc2b5deb8019dc7a12970098f1af707171fa41129be31b04e1dc1651a777 mastodon.sidekiq.initd
63b67ec16107e4d1747ae956cdd41edd03be71da1ed96d21a18710cbba69ce37c856f4abc080a61f172a10859d0b9a33ba9290fc69213e1bc15a1ce8f8d40108 mastodon.streaming.initd 03433a2f58600ca0d58e7c3713df2146ccdfc92033ccfe801dbd38bac39b66d6297f2b5ca02300caa36455b484eab2caa68c912c2f72150203bfa0e106c375fc mastodon.streaming.initd
83b3bae5b6fdb4d0dbc1cbe546c62c0aa77397b97d1a5d5377af032466677de188065b556710c0d96576bbae89cc76800f1ffb8cd718155eb2784da818f27619 mastodon.logrotate 83b3bae5b6fdb4d0dbc1cbe546c62c0aa77397b97d1a5d5377af032466677de188065b556710c0d96576bbae89cc76800f1ffb8cd718155eb2784da818f27619 mastodon.logrotate
dfd0e43ac6c28387bd4aa57fd98ae41aeb5a098b6deb3e44b89f07818e2470773b025364afee7ef6fd0f664cb86bbbbe8796c9f222f5436c256a787282fbe3e1 bin-wrapper.in dfd0e43ac6c28387bd4aa57fd98ae41aeb5a098b6deb3e44b89f07818e2470773b025364afee7ef6fd0f664cb86bbbbe8796c9f222f5436c256a787282fbe3e1 bin-wrapper.in
" "

View file

@ -6,6 +6,7 @@ description="Meta script for starting/stopping all the Mastodon components"
subservices="mastodon.sidekiq mastodon.streaming mastodon.web" subservices="mastodon.sidekiq mastodon.streaming mastodon.web"
depend() { depend() {
need redis postgresql
use net use net
} }

View file

@ -1,7 +1,7 @@
#!/sbin/openrc-run #!/sbin/openrc-run
name="Mastodon background workers Service" name="Mastodon background workers Service"
root="/usr/share/webapps/mastodon" root="/usr/lib/bundles/mastodon"
pidfile="/run/mastodon-sidekiq.pid" pidfile="/run/mastodon-sidekiq.pid"
logfile="/var/log/mastodon/sidekiq.log" logfile="/var/log/mastodon/sidekiq.log"

View file

@ -1,7 +1,7 @@
#!/sbin/openrc-run #!/sbin/openrc-run
name="Mastodon streaming API service" name="Mastodon streaming API service"
root="/usr/share/webapps/mastodon" root="/usr/lib/bundles/mastodon"
pidfile="/run/mastodon-streaming.pid" pidfile="/run/mastodon-streaming.pid"
logfile="/var/log/mastodon/streaming.log" logfile="/var/log/mastodon/streaming.log"

View file

@ -1,7 +1,7 @@
#!/sbin/openrc-run #!/sbin/openrc-run
name="Mastodon Web Service" name="Mastodon Web Service"
root="/usr/share/webapps/mastodon" root="/usr/lib/bundles/mastodon"
pidfile="/run/mastodon-web.pid" pidfile="/run/mastodon-web.pid"
logfile="/var/log/mastodon/web.log" logfile="/var/log/mastodon/web.log"

View file

@ -4,7 +4,7 @@ pkgname=peertube
pkgver=6.0.2 pkgver=6.0.2
pkgrel=0 pkgrel=0
pkgdesc="ActivityPub-federated video streaming platform using P2P directly in your web browser" pkgdesc="ActivityPub-federated video streaming platform using P2P directly in your web browser"
#arch="x86_64" arch="x86_64"
url="https://joinpeertube.org/" url="https://joinpeertube.org/"
license="AGPL" license="AGPL"
depends=" depends="

View file

@ -4,7 +4,7 @@ pkgname=php82-pecl-inotify
_extname=inotify _extname=inotify
pkgver=3.0.0 pkgver=3.0.0
pkgrel=0 pkgrel=0
pkgdesc="Inotify bindings for PHP 8.2" pkgdesc="Inotify bindings for PHP 8.3"
url="https://pecl.php.net/package/inotify" url="https://pecl.php.net/package/inotify"
arch="all" arch="all"
license="PHP-3.01" license="PHP-3.01"
@ -30,4 +30,6 @@ package() {
echo "extension=$_extname" > $_confdir/70_$_extname.ini echo "extension=$_extname" > $_confdir/70_$_extname.ini
} }
sha512sums="f8b29f8611f16b92136ab8de89181c254bba1abee1e61cac2344440567a3155aae4b9b54b10fdb1b0254fd7a96da8c14b7dc5c9f7f08a03db30ab1645aca1eee php-pecl-inotify-3.0.0.tgz" sha512sums="
f8b29f8611f16b92136ab8de89181c254bba1abee1e61cac2344440567a3155aae4b9b54b10fdb1b0254fd7a96da8c14b7dc5c9f7f08a03db30ab1645aca1eee php-pecl-inotify-3.0.0.tgz
"

View file

@ -0,0 +1,35 @@
# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=php83-pecl-inotify
_extname=inotify
pkgver=3.0.0
pkgrel=0
pkgdesc="Inotify bindings for PHP 8.3"
url="https://pecl.php.net/package/inotify"
arch="all"
license="PHP-3.01"
depends="php83-common"
makedepends="php83-dev"
source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
builddir="$srcdir"/$_extname-$pkgver
build() {
phpize83
./configure --prefix=/usr --with-php-config=php-config83
make
}
check() {
make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
}
package() {
make INSTALL_ROOT="$pkgdir" install
local _confdir="$pkgdir"/etc/php83/conf.d
install -d $_confdir
echo "extension=$_extname" > $_confdir/70_$_extname.ini
}
sha512sums="
f8b29f8611f16b92136ab8de89181c254bba1abee1e61cac2344440567a3155aae4b9b54b10fdb1b0254fd7a96da8c14b7dc5c9f7f08a03db30ab1645aca1eee php-pecl-inotify-3.0.0.tgz
"

View file

@ -0,0 +1,59 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Contributor: Justin Berthault <justin.berthault@zaclys.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=py3-django-rest-framework
_pkgname=django-rest-framework
pkgver=3.14.0
pkgrel=0
pkgdesc="Web APIs for Django"
url="https://github.com/encode/django-rest-framework"
arch="noarch"
license="Custom"
depends="
py3-django
py3-tz
"
makedepends="
py3-setuptools
py3-gpep517
py3-wheel
"
checkdepends="
py3-pytest-django
py3-pytest-cov
py3-core-api
py3-jinja2
py3-uritemplate
py3-django-guardian
py3-psycopg2
py3-markdown
py3-yaml
py3-inflection
"
subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/encode/$_pkgname/archive/$pkgver.tar.gz"
options="!check" # Failing tests
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 "$builddir"/.dist/*.whl
# test_urlpatterns: AssertionError: assert [<URLPattern ''>] is not [<URLPattern ''>]
# test_markdown: rather hard to decipher assertion error
.testenv/bin/python3 -m pytest -v -k 'not test_urlpatterns and not test_markdown'
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
c1012c656b427e0318b2056e2f984ddc75a5b4e85f375c76fba165ad06e285848eee1bc6dc76c097daec57d780efb2551110199d62ce636a03951aec13ab4013 py3-django-rest-framework-3.14.0.tar.gz
"

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,43 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=py3-django-tenants
#_pkgreal is used by apkbuild-pypi to find modules at PyPI
_pkgreal=django-tenants
pkgver=3.6.1
pkgrel=0
pkgdesc="Tenant support for Django using PostgreSQL schemas."
url="https://pypi.python.org/project/django-tenants"
arch="noarch"
license="KIT"
depends="py3-django py3-psycopg py3-gunicorn py3-coverage"
checkdepends="python3-dev py3-pytest"
makedepends="py3-setuptools py3-gpep517 py3-wheel"
source="
$pkgname-$pkgver.tar.gz::https://codeload.github.com/django-tenants/django-tenants/tar.gz/refs/tags/v$pkgver
997_update-from-pgclone-schema.patch
"
builddir="$srcdir/$_pkgreal-$pkgver"
options="!check" # Requires setting up test database
subpackages="$pkgname-pyc"
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 -v
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
b18afce81ccc89e49fcc4ebe85d90be602415ca898c1660a4e71e2bef6a3ed2e8c724e94b61d8c6f48f3fb19eb2a87d6a6f5bbf449b3e2f661f87e4b5638eafb py3-django-tenants-3.6.1.tar.gz
f2424bb188db2e3c7d13c15e5bdf0959c6f794e68dbc677c8b876d4faa321f78aded5565539f1bfd97583c6df0fcc19ec05abe203b08407e4446dd7194756825 997_update-from-pgclone-schema.patch
"

View file

@ -0,0 +1,38 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=py3-scim2-filter-parser
#_pkgreal is used by apkbuild-pypi to find modules at PyPI
_pkgreal=scim2-filter-parser
pkgver=0.5.0
pkgrel=0
pkgdesc="A customizable parser/transpiler for SCIM2.0 filters"
url="https://pypi.python.org/project/scim2-filter-parser"
arch="noarch"
license="MIT"
depends="py3-django py3-sly"
checkdepends="py3-pytest"
makedepends="py3-setuptools py3-gpep517 py3-wheel poetry"
source="$pkgname-$pkgver.tar.gz::https://github.com/15five/scim2-filter-parser/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
subpackages="$pkgname-pyc"
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 -v
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
5347852af6b82a764a32bc491a7e0f05f06b4f4d93dfa375668b5ca1a15ee58f488702536e350100fe5c96a5c94c492ea8cbd0e1952c5920d5a10e1453357f8c py3-scim2-filter-parser-0.5.0.tar.gz
"

View file

@ -0,0 +1,41 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=py3-tenant-schemas-celery
#_pkgreal is used by apkbuild-pypi to find modules at PyPI
_pkgreal=tenant-schemas-celery
pkgver=2.2.0
pkgrel=0
pkgdesc="Celery integration for django-tenant-schemas and django-tenants"
url="https://pypi.python.org/project/tenant-schemas-celery"
arch="noarch"
license="MIT"
depends="py3-django-tenants py3-celery"
checkdepends="python3-dev py3-pytest"
makedepends="py3-setuptools py3-gpep517 py3-wheel"
source="
$pkgname-$pkgver.tar.gz::https://codeload.github.com/maciej-gol/tenant-schemas-celery/tar.gz/refs/tags/$pkgver
"
options="!check" # Test suite wants docker
builddir="$srcdir/$_pkgreal-$pkgver"
subpackages="$pkgname-pyc"
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 -v
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
dad71011306936dc84d966797b113008780750e9e973513092bec892be0d1468e0a0e7e8e2fcca9765309a27767e1c72bdaad7c8aca16353ae1eef783c239148 py3-tenant-schemas-celery-2.2.0.tar.gz
"

View file

@ -2,7 +2,7 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=rmfakecloud pkgname=rmfakecloud
pkgver=0.0.17 pkgver=0.0.19
_gittag=v$pkgver _gittag=v$pkgver
pkgrel=0 pkgrel=0
pkgdesc="A selfhosted cloud for the Remarkable Tablet" pkgdesc="A selfhosted cloud for the Remarkable Tablet"
@ -10,7 +10,7 @@ url="https://github.com/ddvk/rmfakecloud"
arch="all" arch="all"
license="AGPL-3.0-only" license="AGPL-3.0-only"
makedepends="go yarn" makedepends="go yarn"
options="chmod-clean" options="chmod-clean net"
source=" source="
$pkgname-$pkgver.tar.gz::https://github.com/ddvk/rmfakecloud/archive/v$pkgver.tar.gz $pkgname-$pkgver.tar.gz::https://github.com/ddvk/rmfakecloud/archive/v$pkgver.tar.gz
rmfakecloud.conf rmfakecloud.conf
@ -18,20 +18,6 @@ source="
" "
subpackages="$pkgname-openrc" subpackages="$pkgname-openrc"
case "$CTARGET_ARCH" in
aarch64)export GOARCH="arm64" ;;
armel) export GOARCH="arm" GOARM=5 ;;
armhf) export GOARCH="arm" GOARM=6 ;;
armv7) export GOARCH="arm" GOARM=7 ;;
s390x) export GOARCH="s390x" ;;
x86) export GOARCH="386" ;;
x86_64) export GOARCH="amd64" ;;
ppc64) export GOARCH="ppc64" ;;
ppc64le) export GOARCH="ppc64le" ;;
riscv64) export GOARCH="riscv64" ;;
*) export GOARCH="unsupported";;
esac
build() { build() {
export GOPATH="$srcdir/go" export GOPATH="$srcdir/go"
export LDFLAGS="$LDFLAGS -X main.version=$pkgver" export LDFLAGS="$LDFLAGS -X main.version=$pkgver"
@ -51,7 +37,7 @@ package() {
install -Dm755 "$srcdir"/rmfakecloud.openrc "$pkgdir"/etc/init.d/rmfakecloud install -Dm755 "$srcdir"/rmfakecloud.openrc "$pkgdir"/etc/init.d/rmfakecloud
} }
sha512sums=" sha512sums="
2836364ba7a0c70b33f5914e357a87fb681275268a1cd5e1b6eba91037017c57f6a24b1bcecf9daa423c2588128ce591c2066d8af1d89eedccca231d24671748 rmfakecloud-0.0.17.tar.gz 55948ede5f8a4cc9e74c9c68f83d14dec4950f23da5ef053f3ae708edf2643f64e5736abfe63cbf6700e5277adff7167ce0f228a8241169261f4ce59e2815a35 rmfakecloud-0.0.19.tar.gz
d5677cef282085cd6642a034dd258ffa294862aeb0ce81d6485a524a15564849bc4eb90a9d1fa4dbcf4eab69dcd893302aa06493fc8fad74d69200c2bdf246c0 rmfakecloud.conf d5677cef282085cd6642a034dd258ffa294862aeb0ce81d6485a524a15564849bc4eb90a9d1fa4dbcf4eab69dcd893302aa06493fc8fad74d69200c2bdf246c0 rmfakecloud.conf
891d0945886796132f951293e081046334857563b4ebae28a3aa5b6bc37768767c49ce102de645ed8340af2518de606be8bf6ecafeb6d189dd937970aa3e6498 rmfakecloud.openrc 891d0945886796132f951293e081046334857563b4ebae28a3aa5b6bc37768767c49ce102de645ed8340af2518de606be8bf6ecafeb6d189dd937970aa3e6498 rmfakecloud.openrc
" "

View file

@ -7,14 +7,14 @@ _gittag=v2023.03.0+386
_panmirrortag=aea3027882718af657d60221818c3ff35f413219 _panmirrortag=aea3027882718af657d60221818c3ff35f413219
pkgrel=0 pkgrel=0
pkgdesc="A powerful and productive integrated development environment (IDE) for R programming language" pkgdesc="A powerful and productive integrated development environment (IDE) for R programming language"
#arch="x86_64" arch="x86_64"
url="https://www.rstudio.com/products/rstudio/" url="https://www.rstudio.com/products/rstudio/"
license='AGPL3' license='AGPL3'
options="!check" # No testsuite options="!check" # No testsuite
# missing quarto-cli # missing quarto-cli
depends=" depends="
R>=3.0.1 R>=3.0.1
clang14 clang15
hunspell-en hunspell-en
libldap libldap
lxqt-config lxqt-config
@ -23,6 +23,7 @@ depends="
sqlite sqlite
" "
makedepends=" makedepends="
bash
apache-ant apache-ant
boost-dev boost-dev
cmake>=3.1.0 cmake>=3.1.0

View file

@ -1,18 +1,15 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net> # Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net> # Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=zotero pkgname=zotero
pkgver=7.0.0_beta76 pkgver=7.0.9
pkgrel=0 pkgrel=0
_fxver=115.9.1 _fxver=115.16.0
_gittag=$pkgver _gittag=$pkgver
# Date of release, YY-MM-DD for metainfo file (see package())
# https://www.mozilla.org/firefox/organizations/notes/
_releasedate=2024-03-22
pkgdesc="A free, easy-to-use tool to help you collect, organize, cite, and share your research sources." pkgdesc="A free, easy-to-use tool to help you collect, organize, cite, and share your research sources."
url="https://www.mozilla.org/en-US/firefox/organizations/" url="https://www.zotero.org/"
# s390x and riscv64: blocked by rust and cargo # s390x and riscv64: blocked by rust and cargo
# armhf: build failure on armhf due to wasm # armhf: build failure on armhf due to wasm
#arch="x86_64 armv7 aarch64 x86 ppc64le" 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" license="GPL-3.0-only AND LGPL-2.1-only AND LGPL-3.0-only AND MPL-2.0"
depends=" depends="
ffmpeg-libavcodec ffmpeg-libavcodec
@ -71,7 +68,6 @@ makedepends="
source="https://ftp.mozilla.org/pub/firefox/releases/${_fxver}esr/source/firefox-${_fxver}esr.source.tar.xz source="https://ftp.mozilla.org/pub/firefox/releases/${_fxver}esr/source/firefox-${_fxver}esr.source.tar.xz
audio-lfs64.patch audio-lfs64.patch
disable-moz-stackwalk.patch disable-moz-stackwalk.patch
esr-metainfo.patch
fix-fortify-system-wrappers.patch fix-fortify-system-wrappers.patch
fix-rust-target.patch fix-rust-target.patch
fix-webrtc-glibcisms.patch fix-webrtc-glibcisms.patch
@ -82,27 +78,27 @@ source="https://ftp.mozilla.org/pub/firefox/releases/${_fxver}esr/source/firefox
ppc-webrtc.patch ppc-webrtc.patch
python-deps.patch python-deps.patch
rust-lto-thin.patch rust-lto-thin.patch
rust1.78-packed-to-portable_simd.patch
sandbox-fork.patch sandbox-fork.patch
sandbox-largefile.patch sandbox-largefile.patch
sandbox-sched_setscheduler.patch sandbox-sched_setscheduler.patch
stab.h stab.h
firefox.desktop
mozilla-location.keys mozilla-location.keys
vendor-prefs.js vendor-prefs.js
zotero.desktop zotero.desktop
https://lab.ilot.io/mirrors/zotero-client/-/releases/$_gittag/downloads/tarball/zotero-client-$_gittag.tar.gz https://ayakael.net/api/packages/mirrors/generic/zotero/$pkgver/zotero-$pkgver.tar.gz
zotero_drop-jazzer.patch
zotero_build-modifications.patch zotero_build-modifications.patch
zotero_drop-phantomjs.patch
zotero_test-drop-build.patch zotero_test-drop-build.patch
zotero_test-fix-chars.patch zotero_test-fix-chars.patch
zotero_test-push-timeout-to-30sec.patch zotero_test-push-timeout-to-30sec.patch
" "
builddir="$srcdir"/firefox-$_fxver builddir="$srcdir"/firefox-$_fxver
_zoterodir="$srcdir"/zotero-client-$_gittag _zoterodir="$srcdir"/zotero-$_gittag
_mozappdir=/usr/lib/zotero _mozappdir=/usr/lib/zotero
# help our shared-object scanner to find the libs # help our shared-object scanner to find the libs
@ -152,17 +148,19 @@ prepare() {
local _exp_fxver=$(grep GECKO_VERSION_LINUX "$builddir"/zotero/app/config.sh | sed 's|.*=||' | tr -d '"' | sed 's|esr||') local _exp_fxver=$(grep GECKO_VERSION_LINUX "$builddir"/zotero/app/config.sh | sed 's|.*=||' | tr -d '"' | sed 's|esr||')
if [ "$_fxver" != "$_exp_fxver" ]; then if [ "$_fxver" != "$_exp_fxver" ]; then
msg "Expected firefox version $_exp_fxver, got $_fxver" msg "Expected firefox version $_exp_fxver, got $_fxver"
return 1
fi fi
# zotero build expects to be in a git repo # zotero build expects to be in a git repo
git init git init
git config user.name info
git config user.email info@example.org
git commit --allow-empty -m 'Initial' git commit --allow-empty -m 'Initial'
npm i --legacy-peer-deps npm i --legacy-peer-deps
) )
default_prepare default_prepare
rm -rf third_party/rust/packed_simd/
cp "$srcdir"/stab.h toolkit/crashreporter/google-breakpad/src/ cp "$srcdir"/stab.h toolkit/crashreporter/google-breakpad/src/
_clear_vendor_checksums audio_thread_priority _clear_vendor_checksums audio_thread_priority
@ -358,10 +356,9 @@ package() {
} }
sha512sums=" sha512sums="
9ccaede2fcda13a07f98a2110bb8f99c7324601d66bff311f3070a669576a1598fe1d7de2d005d725d1f44dbe3934a9c0fd0b7950f60686047d4ce8d9d812310 firefox-115.9.1esr.source.tar.xz b6f93ec3d6acac5df177253c65b833c017e65ed6e78e96ff029098443928d291f6f67164aedb83d80aa28ee9dee305086597798238d3330e35183030e53e3550 firefox-115.16.0esr.source.tar.xz
3e0501ae7a650346c667dfdc0ae0ca286084f22e89ab2ac671cc0d7315673dc5b6dcb9f9882f6f39d26e9a31e57f7a0fd53d6b805e520224e22b8976850e2eb8 audio-lfs64.patch 3e0501ae7a650346c667dfdc0ae0ca286084f22e89ab2ac671cc0d7315673dc5b6dcb9f9882f6f39d26e9a31e57f7a0fd53d6b805e520224e22b8976850e2eb8 audio-lfs64.patch
454ea3263cabce099accbdc47aaf83be26a19f8b5a4568c01a7ef0384601cf8315efd86cd917f9c8bf419c2c845db89a905f3ff9a8eb0c8e41042e93aa96a85c disable-moz-stackwalk.patch 454ea3263cabce099accbdc47aaf83be26a19f8b5a4568c01a7ef0384601cf8315efd86cd917f9c8bf419c2c845db89a905f3ff9a8eb0c8e41042e93aa96a85c disable-moz-stackwalk.patch
f7b3b45ba04d05d17439d009bf0c9f27881e126f424e2257552338a0c1e3771ee1289c044babcb0920f62af62873a268c0cf524e1d35711e6dc8b808ca5e9f26 esr-metainfo.patch
2f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch 2f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch
cd68b89e29e5f6379fbd5679db27b9a5ef70ea65e51c0d0a8137e1f1fd210e35a8cfb047798e9549bc7275606d7ec5c8d8af1335d29da4699db7acd8bc7ff556 fix-rust-target.patch cd68b89e29e5f6379fbd5679db27b9a5ef70ea65e51c0d0a8137e1f1fd210e35a8cfb047798e9549bc7275606d7ec5c8d8af1335d29da4699db7acd8bc7ff556 fix-rust-target.patch
305c874fdea3096e9c4c6aa6520ac64bb1c347c4b59db8360096646593fe684c3b5377874d91cecd33d56d1410b4714fbdea2b514923723ecbeff79d51265d9b fix-webrtc-glibcisms.patch 305c874fdea3096e9c4c6aa6520ac64bb1c347c4b59db8360096646593fe684c3b5377874d91cecd33d56d1410b4714fbdea2b514923723ecbeff79d51265d9b fix-webrtc-glibcisms.patch
@ -372,17 +369,17 @@ c0437a6753f3f350968fa12d250efdfe1bea77baf0e4c06b072b5cc9e78c774dbf4506bc53633703
6f60e83599041db1b707c21784197ea9816b2c936b89a274bfc24554a600981e6f28448fe41fab0942bd31acd49b1c00beb2eb0961149f2ffa6a4154be123ea7 ppc-webrtc.patch 6f60e83599041db1b707c21784197ea9816b2c936b89a274bfc24554a600981e6f28448fe41fab0942bd31acd49b1c00beb2eb0961149f2ffa6a4154be123ea7 ppc-webrtc.patch
4e40b34c5f77a1a21fe971a6fcd8a21b1a63423a3a7932a5a6e1c7a2779f9f06a561c806614a01931679a4b1c6afdfd8ae1f3cc6b673f259ccd368e8e54f6e90 python-deps.patch 4e40b34c5f77a1a21fe971a6fcd8a21b1a63423a3a7932a5a6e1c7a2779f9f06a561c806614a01931679a4b1c6afdfd8ae1f3cc6b673f259ccd368e8e54f6e90 python-deps.patch
1c6918dd6655d3a1251bfd4af2e1c561cbb00d540a883b4c1ebf7f5de530d754d9ac07b4b5f56cdab6c511d25c8910ec94043f5733e97501a67abffe1bafaeb1 rust-lto-thin.patch 1c6918dd6655d3a1251bfd4af2e1c561cbb00d540a883b4c1ebf7f5de530d754d9ac07b4b5f56cdab6c511d25c8910ec94043f5733e97501a67abffe1bafaeb1 rust-lto-thin.patch
e4795b88e572bb3b6f009dbacc7872b59db2f8facbe2b07f14dd4f45a77c22049783581869f18c6bb3f04d6edb3da59347278321cce2bfa629a4d35e136cda5c rust1.78-packed-to-portable_simd.patch
2518f2fc75b5db30058e0735f47d60fdf1e7adfaeee4b33fb2afb1bd9a616ce943fd88f4404d0802d4083703f4acf1d5ad42377218d025bc768807fbaf7e1609 sandbox-fork.patch 2518f2fc75b5db30058e0735f47d60fdf1e7adfaeee4b33fb2afb1bd9a616ce943fd88f4404d0802d4083703f4acf1d5ad42377218d025bc768807fbaf7e1609 sandbox-fork.patch
b7d0a6126bdf6c0569f80aabf5b37ed2c7a35712eb8a0404a2d85381552f5555d4f97d213ea26cec6a45dc2785f22439376ed5f8e78b4fd664ef0223307b333e sandbox-largefile.patch b7d0a6126bdf6c0569f80aabf5b37ed2c7a35712eb8a0404a2d85381552f5555d4f97d213ea26cec6a45dc2785f22439376ed5f8e78b4fd664ef0223307b333e sandbox-largefile.patch
f8c3555ef6207933cbffbf4fc101a9b4c0d2990c0063162f0f0bde70ef0b46f86bfac42e7110695183424a87948de593f3927b2d8509ede3e4fc7bd8a1fad1ce sandbox-sched_setscheduler.patch f8c3555ef6207933cbffbf4fc101a9b4c0d2990c0063162f0f0bde70ef0b46f86bfac42e7110695183424a87948de593f3927b2d8509ede3e4fc7bd8a1fad1ce sandbox-sched_setscheduler.patch
0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h 0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h
d354f48a29bfc16719f3b230b1395063239d4420f9e47522de4662392d9697b15f931ca3bf6055d100fa33d61a9a1a13477687d5eac99e50ae7dbef9882a5808 firefox.desktop
382510375b1a2fa79be0ab79e3391a021ae2c022429ffbaa7e7a69166f99bb56d01e59a1b10688592a29238f21c9d6977672bd77f9fae439b66bdfe0c55ddb15 mozilla-location.keys 382510375b1a2fa79be0ab79e3391a021ae2c022429ffbaa7e7a69166f99bb56d01e59a1b10688592a29238f21c9d6977672bd77f9fae439b66bdfe0c55ddb15 mozilla-location.keys
fc45bc3ffb9404e5338ea26a9f04807b40f6f516324972cddd48bedb91b8bd7c6b8d4e03a0209020f5e67b703bc4ff89389985791b9bd544a0fc3951e2dc338e vendor-prefs.js fc45bc3ffb9404e5338ea26a9f04807b40f6f516324972cddd48bedb91b8bd7c6b8d4e03a0209020f5e67b703bc4ff89389985791b9bd544a0fc3951e2dc338e vendor-prefs.js
e1a0a4ff5cc1b53f13776ca11927d671426b0691e78e74a4adf2166d57bb2ae8ac409cc11a37ce5e2f680fdf05d5bc3849c33a9717aca1bb62d03ae5231a67fb zotero.desktop e1a0a4ff5cc1b53f13776ca11927d671426b0691e78e74a4adf2166d57bb2ae8ac409cc11a37ce5e2f680fdf05d5bc3849c33a9717aca1bb62d03ae5231a67fb zotero.desktop
e8442e68c53d0057947e4abb4d7ab2f4d52dbb88372d362006c43780d65cae1fe579ab167c772d36113c7937c296b7e4306027319757fb0d36f76a851be6e0e3 zotero-client-7.0.0_beta76.tar.gz 97955d89ab108a61d0db7d04d4a9d11cc5a97907e8b82232a836613b20e18f89eff2c2c69f4492cb49c014d129767e4d5fd5b46b68b2b05d38d454bc04eea337 zotero-7.0.9.tar.gz
3730281d9dc7f6b08c8ac31f057fd2baf6e1263835012959bd3c7118c3cd8b4e672513eb9cb7df0d97904207505a98c57465e307649d2ee6ff900b45401bce31 zotero_drop-jazzer.patch
746dbabbb3ea9199d17891e2079b9256d04843f548132178862117d2334694d98e2cc981945d72f31d0e5b2c42904d371633f6905996bb580aa0b5ae95c64ddc zotero_build-modifications.patch 746dbabbb3ea9199d17891e2079b9256d04843f548132178862117d2334694d98e2cc981945d72f31d0e5b2c42904d371633f6905996bb580aa0b5ae95c64ddc zotero_build-modifications.patch
cfe583f2da7508a4e07734a42519d7c28265928fe14c14b2f650ca6e56c35cb79272b03ed3bfb81e06c4e01458b55e04d10df5cbdd549da0d97206b2c10c3530 zotero_drop-phantomjs.patch
337070ee4c44ccb35c6b6290c18327740bb9fccfd1a6ad1045782e83daa290b6ced7d53955d3a889f661d588738a64f2e7f383639f4c46be9fdf891168abc9ff zotero_test-drop-build.patch 337070ee4c44ccb35c6b6290c18327740bb9fccfd1a6ad1045782e83daa290b6ced7d53955d3a889f661d588738a64f2e7f383639f4c46be9fdf891168abc9ff zotero_test-drop-build.patch
f0e4f09496531222e8400959f9ef12852bca269eb3bf4c3b87ccaf92f28a12b9374461a1c79ad294a4393dbe30800aa1c85497033d0bc304fa8c198dfab3efd2 zotero_test-fix-chars.patch f0e4f09496531222e8400959f9ef12852bca269eb3bf4c3b87ccaf92f28a12b9374461a1c79ad294a4393dbe30800aa1c85497033d0bc304fa8c198dfab3efd2 zotero_test-fix-chars.patch
9dc390d8bae42e645cae45fe5551751d8f38d5c1b8b2cc0eec1c2191f4bde293ffb2c67cfc4de765f2d48b1da4d5fcd4f1c03711e5da3180cd1b63710ccf5599 zotero_test-push-timeout-to-30sec.patch 9dc390d8bae42e645cae45fe5551751d8f38d5c1b8b2cc0eec1c2191f4bde293ffb2c67cfc4de765f2d48b1da4d5fcd4f1c03711e5da3180cd1b63710ccf5599 zotero_test-push-timeout-to-30sec.patch

View file

@ -1,18 +0,0 @@
see https://gitlab.alpinelinux.org/alpine/aports/-/issues/13235
--- a/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.appdata.xml.in
+++ b/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.appdata.xml.in
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<application>
- <id type="desktop">org.mozilla.firefox</id>
+ <id type="desktop">org.mozilla.firefox-esr</id>
- <launchable type="desktop-id">org.mozilla.firefox.desktop</launchable>
+ <launchable type="desktop-id">firefox-esr.desktop</launchable>
- <name>Firefox</name>
+ <name>Firefox ESR</name>
<developer_name>Mozilla</developer_name>
- <summary>Fast, Private &amp; Safe Web Browser</summary>
+ <summary>Mozilla Firefox Web Browser Extended Support Release</summary>
<metadata_license>CC0-1.0</metadata_license>
<project_license>MPL-2.0</project_license>
<description>

View file

@ -1,340 +0,0 @@
[Desktop Entry]
Version=1.0
Name=Firefox ESR
GenericName=Web Browser
GenericName[ar]=متصفح ويب
GenericName[ast]=Restolador Web
GenericName[bn]=
GenericName[ca]=Navegador web
GenericName[cs]=Webový prohlížeč
GenericName[da]=Webbrowser
GenericName[de]=Webbrowser
GenericName[el]=Περιηγητής διαδικτύου
GenericName[es]=Navegador web
GenericName[et]=Veebibrauser
GenericName[fa]=مرورگر اینترنتی
GenericName[fi]=WWW-selain
GenericName[fr]=Navigateur Web
GenericName[gl]=Navegador Web
GenericName[he]=דפדפן אינטרנט
GenericName[hr]=Web preglednik
GenericName[hu]=Webböngésző
GenericName[it]=Browser web
GenericName[ja]=
GenericName[ko]=
GenericName[ku]=Geroka torê
GenericName[lt]=Interneto naršyklė
GenericName[nb]=Nettleser
GenericName[nl]=Webbrowser
GenericName[nn]=Nettlesar
GenericName[no]=Nettleser
GenericName[pl]=Przeglądarka WWW
GenericName[pt]=Navegador Web
GenericName[pt_BR]=Navegador Web
GenericName[ro]=Navigator Internet
GenericName[ru]=Веб-браузер
GenericName[sk]=Internetový prehliadač
GenericName[sl]=Spletni brskalnik
GenericName[sv]=Webbläsare
GenericName[tr]=Web Tarayıcı
GenericName[ug]=توركۆرگۈ
GenericName[uk]=Веб-браузер
GenericName[vi]=Trình duyt Web
GenericName[zh_CN]=
GenericName[zh_TW]=
Comment=Browse the World Wide Web
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
Comment[ast]=Restola pela Rede
Comment[bn]=
Comment[ca]=Navegueu per el web
Comment[cs]=Prohlížení stránek World Wide Webu
Comment[da]=Surf på internettet
Comment[de]=Im Internet surfen
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
Comment[es]=Navegue por la web
Comment[et]=Lehitse veebi
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
Comment[fi]=Selaa Internetin WWW-sivuja
Comment[fr]=Naviguer sur le Web
Comment[gl]=Navegar pola rede
Comment[he]=גלישה ברחבי האינטרנט
Comment[hr]=Pretražite web
Comment[hu]=A világháló böngészése
Comment[it]=Esplora il web
Comment[ja]=
Comment[ko]=
Comment[ku]=Li torê bigere
Comment[lt]=Naršykite internete
Comment[nb]=Surf på nettet
Comment[nl]=Verken het internet
Comment[nn]=Surf på nettet
Comment[no]=Surf på nettet
Comment[pl]=Przeglądanie stron WWW
Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[ro]=Navigați pe Internet
Comment[ru]=Доступ в Интернет
Comment[sk]=Prehliadanie internetu
Comment[sl]=Brskajte po spletu
Comment[sv]=Surfa på webben
Comment[tr]=İnternet'te Gezinin
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
Comment[uk]=Перегляд сторінок Інтернету
Comment[vi]=Đ duyt các trang web
Comment[zh_CN]=
Comment[zh_TW]=
Keywords=Internet;WWW;Browser;Web;Explorer
Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;Firefox;Φιρεφοχ;Ιντερνετ
Keywords[es]=Explorador;Internet;WWW
Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
Keywords[hr]=Internet;WWW;preglednik;Web
Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
Keywords[ja]=Internet;WWW;Web;;;;
Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyt;Trang web
Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;;;;;Firefox;ff;;;
Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;;;;;;
Exec=firefox-esr %u
Icon=firefox-esr
Terminal=false
X-MultipleArgs=false
Type=Application
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;application/pdf;application/json;
StartupNotify=true
StartupWMClass=firefox-esr
Categories=Network;WebBrowser;
Actions=new-window;new-private-window;
[Desktop Action new-window]
Name=New Window
Name[ach]=Dirica manyen
Name[af]=Nuwe venster
Name[an]=Nueva finestra
Name[ar]=نافذة جديدة
Name[as]=
Name[ast]=Ventana nueva
Name[az]=Yeni Pəncərə
Name[be]=Новае акно
Name[bg]=Нов прозорец
Name[bn_BD]= (N)
Name[bn_IN]=
Name[br]=Prenestr nevez
Name[brx]= '(N)
Name[bs]=Novi prozor
Name[ca]=Finestra nova
Name[cak]=K'ak'a' tzuwäch
Name[cs]=Nové okno
Name[cy]=Ffenestr Newydd
Name[da]=Nyt vindue
Name[de]=Neues Fenster
Name[dsb]=Nowe wokno
Name[el]=Νέο παράθυρο
Name[en_GB]=New Window
Name[en_US]=New Window
Name[en_ZA]=New Window
Name[eo]=Nova fenestro
Name[es_AR]=Nueva ventana
Name[es_CL]=Nueva ventana
Name[es_ES]=Nueva ventana
Name[es_MX]=Nueva ventana
Name[et]=Uus aken
Name[eu]=Leiho berria
Name[fa]=پنجره جدید
Name[ff]=Henorde Hesere
Name[fi]=Uusi ikkuna
Name[fr]=Nouvelle fenêtre
Name[fy_NL]=Nij finster
Name[ga_IE]=Fuinneog Nua
Name[gd]=Uinneag ùr
Name[gl]=Nova xanela
Name[gn]=Ovetã pyahu
Name[gu_IN]= િ
Name[he]=חלון חדש
Name[hi_IN]= ि
Name[hr]=Novi prozor
Name[hsb]=Nowe wokno
Name[hu]=Új ablak
Name[hy_AM]=Նոր Պատուհան
Name[id]=Jendela Baru
Name[is]=Nýr gluggi
Name[it]=Nuova finestra
Name[ja]=
Name[ja_JP-mac]=
Name[ka]=
Name[kk]=Жаңа терезе
Name[km]=
Name[kn]= ಿಿ
Name[ko]=
Name[kok]=
Name[ks]=نئئ وِنڈو
Name[lij]=Neuvo barcon
Name[lo]=
Name[lt]=Naujas langas
Name[ltg]=Jauns lūgs
Name[lv]=Jauns logs
Name[mai]= ि
Name[mk]=Нов прозорец
Name[ml]=ി
Name[mr]=
Name[ms]=Tetingkap Baru
Name[my]=
Name[nb_NO]=Nytt vindu
Name[ne_NP]=
Name[nl]=Nieuw venster
Name[nn_NO]=Nytt vindauge
Name[or]= ି
Name[pa_IN]= ਿ
Name[pl]=Nowe okno
Name[pt_BR]=Nova janela
Name[pt_PT]=Nova janela
Name[rm]=Nova fanestra
Name[ro]=Fereastră nouă
Name[ru]=Новое окно
Name[sat]= ि (N)
Name[si]=
Name[sk]=Nové okno
Name[sl]=Novo okno
Name[son]=Zanfun taaga
Name[sq]=Dritare e Re
Name[sr]=Нови прозор
Name[sv_SE]=Nytt fönster
Name[ta]=ி
Name[te]= ి
Name[th]=
Name[tr]=Yeni pencere
Name[tsz]=Eraatarakua jimpani
Name[uk]=Нове вікно
Name[ur]=نیا دریچہ
Name[uz]=Yangi oyna
Name[vi]=Ca s mi
Name[wo]=Palanteer bu bees
Name[xh]=Ifestile entsha
Name[zh_CN]=
Name[zh_TW]=
Exec=firefox-esr --new-window %u
[Desktop Action new-private-window]
Name=New Private Window
Name[ach]=Dirica manyen me mung
Name[af]=Nuwe privaatvenster
Name[an]=Nueva finestra privada
Name[ar]=نافذة خاصة جديدة
Name[as]= ি
Name[ast]=Ventana privada nueva
Name[az]=Yeni Məxfi Pəncərə
Name[be]=Новае акно адасаблення
Name[bg]=Нов прозорец за поверително сърфиране
Name[bn_BD]= ি
Name[bn_IN]= ি
Name[br]=Prenestr merdeiñ prevez nevez
Name[brx]= '
Name[bs]=Novi privatni prozor
Name[ca]=Finestra privada nova
Name[cak]=K'ak'a' ichinan tzuwäch
Name[cs]=Nové anonymní okno
Name[cy]=Ffenestr Breifat Newydd
Name[da]=Nyt privat vindue
Name[de]=Neues privates Fenster
Name[dsb]=Nowe priwatne wokno
Name[el]=Νέο παράθυρο ιδιωτικής περιήγησης
Name[en_GB]=New Private Window
Name[en_US]=New Private Window
Name[en_ZA]=New Private Window
Name[eo]=Nova privata fenestro
Name[es_AR]=Nueva ventana privada
Name[es_CL]=Nueva ventana privada
Name[es_ES]=Nueva ventana privada
Name[es_MX]=Nueva ventana privada
Name[et]=Uus privaatne aken
Name[eu]=Leiho pribatu berria
Name[fa]=پنجره ناشناس جدید
Name[ff]=Henorde Suturo Hesere
Name[fi]=Uusi yksityinen ikkuna
Name[fr]=Nouvelle fenêtre de navigation privée
Name[fy_NL]=Nij priveefinster
Name[ga_IE]=Fuinneog Nua Phríobháideach
Name[gd]=Uinneag phrìobhaideach ùr
Name[gl]=Nova xanela privada
Name[gn]=Ovetã ñemi pyahu
Name[gu_IN]= િ
Name[he]=חלון פרטי חדש
Name[hi_IN]= ि ि
Name[hr]=Novi privatni prozor
Name[hsb]=Nowe priwatne wokno
Name[hu]=Új privát ablak
Name[hy_AM]=Սկսել Գաղտնի դիտարկում
Name[id]=Jendela Mode Pribadi Baru
Name[is]=Nýr huliðsgluggi
Name[it]=Nuova finestra anonima
Name[ja]=
Name[ja_JP-mac]=
Name[ka]=
Name[kk]=Жаңа жекелік терезе
Name[km]=
Name[kn]= ಿ ಿಿ
Name[ko]=
Name[kok]= ि
Name[ks]=نْو پرایوٹ وینڈو
Name[lij]=Nêuvo barcón privòu
Name[lo]=
Name[lt]=Naujas privataus naršymo langas
Name[ltg]=Jauns privatais lūgs
Name[lv]=Jauns privātais logs
Name[mai]= ि ि (W)
Name[mk]=Нов приватен прозорец
Name[ml]=ി
Name[mr]= ि
Name[ms]=Tetingkap Persendirian Baharu
Name[my]=New Private Window
Name[nb_NO]=Nytt privat vindu
Name[ne_NP]= ि
Name[nl]=Nieuw privévenster
Name[nn_NO]=Nytt privat vindauge
Name[or]= ି ି
Name[pa_IN]= ਿ
Name[pl]=Nowe okno prywatne
Name[pt_BR]=Nova janela privativa
Name[pt_PT]=Nova janela privada
Name[rm]=Nova fanestra privata
Name[ro]=Fereastră privată nouă
Name[ru]=Новое приватное окно
Name[sat]= ि ि (W )
Name[si]= (W)
Name[sk]=Nové okno v režime Súkromné prehliadanie
Name[sl]=Novo zasebno okno
Name[son]=Sutura zanfun taaga
Name[sq]=Dritare e Re Private
Name[sr]=Нови приватан прозор
Name[sv_SE]=Nytt privat fönster
Name[ta]=ி ி
Name[te]= ి ి
Name[th]=
Name[tr]=Yeni gizli pencere
Name[tsz]=Juchiiti eraatarakua jimpani
Name[uk]=Приватне вікно
Name[ur]=نیا نجی دریچہ
Name[uz]=Yangi maxfiy oyna
Name[vi]=Ca s riêng tư mi
Name[wo]=Panlanteeru biir bu bees
Name[xh]=Ifestile yangasese entsha
Name[zh_CN]=
Name[zh_TW]=
Exec=firefox-esr --private-window %u

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,24 @@
diff --git a/zotero/pdf-worker/pdf.js/package.json.orig b/zotero/pdf-worker/pdf.js/package.json
index 3025926..13f8b7a 100644
--- a/zotero/pdf-worker/pdf.js/package.json.orig
+++ b/zotero/pdf-worker/pdf.js/package.json
@@ -7,7 +7,6 @@
"@babel/runtime": "^7.24.8",
"@fluent/bundle": "^0.18.0",
"@fluent/dom": "^0.10.0",
- "@jazzer.js/core": "^2.1.0",
"@metalsmith/layouts": "^2.7.0",
"@metalsmith/markdown": "^1.10.0",
"autoprefixer": "^10.4.19",
diff --git a/zotero/reader/pdfjs/pdf.js/package.json.orig b/zotero/reader/pdfjs/pdf.js/package.json
index 3025926aa44..13f8b7aca93 100644
--- a/zotero/reader/pdfjs/pdf.js/package.json.orig
+++ b/zotero/reader/pdfjs/pdf.js/package.json
@@ -7,7 +7,6 @@
"@babel/runtime": "^7.24.8",
"@fluent/bundle": "^0.18.0",
"@fluent/dom": "^0.10.0",
- "@jazzer.js/core": "^2.1.0",
"@metalsmith/layouts": "^2.7.0",
"@metalsmith/markdown": "^1.10.0",
"autoprefixer": "^10.4.19",

View file

@ -1,243 +0,0 @@
diff --git a/zotero/reader/epubjs/epub.js/package.json.orig b/zotero/reader/epubjs/epub.js/package.json
index bb440ac..b4c5c32 100644
--- a/zotero/reader/epubjs/epub.js/package.json.orig
+++ b/zotero/reader/epubjs/epub.js/package.json
@@ -41,7 +41,6 @@
"karma-chrome-launcher": "^3.1.0",
"karma-mocha": "^2.0.1",
"karma-mocha-reporter": "^2.2.5",
- "karma-phantomjs-launcher": "^1.0.4",
"karma-sourcemap-loader": "^0.3.7",
"karma-webpack": "^5.0.0",
"mocha": "^7.2.0",
diff --git a/zotero/reader/epubjs/epub.js/package-lock.json.orig b/zotero/reader/epubjs/epub.js/package-lock.json
index 6d728e7..c889b68 100644
--- a/zotero/reader/epubjs/epub.js/package-lock.json.orig
+++ b/zotero/reader/epubjs/epub.js/package-lock.json
@@ -28,7 +28,6 @@
"karma-chrome-launcher": "^3.1.0",
"karma-mocha": "^2.0.1",
"karma-mocha-reporter": "^2.2.5",
- "karma-phantomjs-launcher": "^1.0.4",
"karma-sourcemap-loader": "^0.3.7",
"karma-webpack": "^5.0.0",
"mocha": "^7.2.0",
@@ -8855,16 +8854,6 @@
"node": ">=4"
}
},
- "node_modules/karma-phantomjs-launcher": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz",
- "integrity": "sha1-0jyjSAG9qYY60xjju0vUBisTrNI=",
- "dev": true,
- "dependencies": {
- "lodash": "^4.0.1",
- "phantomjs-prebuilt": "^2.1.7"
- }
- },
"node_modules/karma-sourcemap-loader": {
"version": "0.3.7",
"resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz",
@@ -11342,26 +11331,6 @@
"integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
"dev": true
},
- "node_modules/phantomjs-prebuilt": {
- "version": "2.1.14",
- "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.14.tgz",
- "integrity": "sha1-1T0xH8+30dCN2yQBRVjxGIxRbaA=",
- "dev": true,
- "dependencies": {
- "es6-promise": "~4.0.3",
- "extract-zip": "~1.5.0",
- "fs-extra": "~1.0.0",
- "hasha": "~2.2.0",
- "kew": "~0.7.0",
- "progress": "~1.1.8",
- "request": "~2.79.0",
- "request-progress": "~2.0.1",
- "which": "~1.2.10"
- },
- "bin": {
- "phantomjs": "bin/phantomjs"
- }
- },
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
@@ -22124,16 +22093,6 @@
}
}
},
- "karma-phantomjs-launcher": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz",
- "integrity": "sha1-0jyjSAG9qYY60xjju0vUBisTrNI=",
- "dev": true,
- "requires": {
- "lodash": "^4.0.1",
- "phantomjs-prebuilt": "^2.1.7"
- }
- },
"karma-sourcemap-loader": {
"version": "0.3.7",
"resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz",
@@ -23984,23 +23943,6 @@
"integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
"dev": true
},
- "phantomjs-prebuilt": {
- "version": "2.1.14",
- "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.14.tgz",
- "integrity": "sha1-1T0xH8+30dCN2yQBRVjxGIxRbaA=",
- "dev": true,
- "requires": {
- "es6-promise": "~4.0.3",
- "extract-zip": "~1.5.0",
- "fs-extra": "~1.0.0",
- "hasha": "~2.2.0",
- "kew": "~0.7.0",
- "progress": "~1.1.8",
- "request": "~2.79.0",
- "request-progress": "~2.0.1",
- "which": "~1.2.10"
- }
- },
"picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
diff --git a/zotero/reader/package-lock.json.orig b/zotero/reader/package-lock.json
index 949e5de..0485ddd 100644
--- a/zotero/reader/package-lock.json.orig
+++ b/zotero/reader/package-lock.json
@@ -83,7 +83,6 @@
"karma-chrome-launcher": "^3.1.0",
"karma-mocha": "^2.0.1",
"karma-mocha-reporter": "^2.2.5",
- "karma-phantomjs-launcher": "^1.0.4",
"karma-sourcemap-loader": "^0.3.7",
"karma-webpack": "^5.0.0",
"mocha": "^7.2.0",
@@ -12332,20 +12331,6 @@
"node": ">=4"
}
},
- "node_modules/karma-phantomjs-launcher": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz",
- "integrity": "sha512-tf4P3plsE7wb5Pqh8GJ6RnElxfI/UM4MtVnjbSIZFpdFJlKnjRzfIx8MLCcSYJBwZ1+qSKFz4uBe3XNoq2t3KA==",
- "deprecated": "PhantomJS development have stopped, use puppeteer or similar",
- "dev": true,
- "dependencies": {
- "lodash": "^4.0.1",
- "phantomjs-prebuilt": "^2.1.7"
- },
- "peerDependencies": {
- "karma": ">=0.9"
- }
- },
"node_modules/karma-sourcemap-loader": {
"version": "0.3.8",
"resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.8.tgz",
@@ -15330,40 +15315,6 @@
"integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
"dev": true
},
- "node_modules/phantomjs-prebuilt": {
- "version": "2.1.16",
- "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz",
- "integrity": "sha512-PIiRzBhW85xco2fuj41FmsyuYHKjKuXWmhjy3A/Y+CMpN/63TV+s9uzfVhsUwFe0G77xWtHBG8xmXf5BqEUEuQ==",
- "deprecated": "this package is now deprecated",
- "dev": true,
- "hasInstallScript": true,
- "dependencies": {
- "es6-promise": "^4.0.3",
- "extract-zip": "^1.6.5",
- "fs-extra": "^1.0.0",
- "hasha": "^2.2.0",
- "kew": "^0.7.0",
- "progress": "^1.1.8",
- "request": "^2.81.0",
- "request-progress": "^2.0.1",
- "which": "^1.2.10"
- },
- "bin": {
- "phantomjs": "bin/phantomjs"
- }
- },
- "node_modules/phantomjs-prebuilt/node_modules/which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "which": "bin/which"
- }
- },
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
@@ -27177,7 +27128,6 @@
"karma-chrome-launcher": "^3.1.0",
"karma-mocha": "^2.0.1",
"karma-mocha-reporter": "^2.2.5",
- "karma-phantomjs-launcher": "^1.0.4",
"karma-sourcemap-loader": "^0.3.7",
"karma-webpack": "^5.0.0",
"mocha": "^7.2.0",
@@ -30497,16 +30447,6 @@
}
}
},
- "karma-phantomjs-launcher": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz",
- "integrity": "sha512-tf4P3plsE7wb5Pqh8GJ6RnElxfI/UM4MtVnjbSIZFpdFJlKnjRzfIx8MLCcSYJBwZ1+qSKFz4uBe3XNoq2t3KA==",
- "dev": true,
- "requires": {
- "lodash": "^4.0.1",
- "phantomjs-prebuilt": "^2.1.7"
- }
- },
"karma-sourcemap-loader": {
"version": "0.3.8",
"resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.8.tgz",
@@ -32672,34 +32612,6 @@
"integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
"dev": true
},
- "phantomjs-prebuilt": {
- "version": "2.1.16",
- "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz",
- "integrity": "sha512-PIiRzBhW85xco2fuj41FmsyuYHKjKuXWmhjy3A/Y+CMpN/63TV+s9uzfVhsUwFe0G77xWtHBG8xmXf5BqEUEuQ==",
- "dev": true,
- "requires": {
- "es6-promise": "^4.0.3",
- "extract-zip": "^1.6.5",
- "fs-extra": "^1.0.0",
- "hasha": "^2.2.0",
- "kew": "^0.7.0",
- "progress": "^1.1.8",
- "request": "^2.81.0",
- "request-progress": "^2.0.1",
- "which": "^1.2.10"
- },
- "dependencies": {
- "which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- }
- }
- },
"picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",